gpt4 book ai didi

javascript - 匹配单词和句号,但不匹配结尾的句号

转载 作者:行者123 更新时间:2023-11-30 07:20:07 27 4
gpt4 key购买 nike

我正在尝试匹配 $word1.word2.word3 类型的字符串,其中包含点,但不应以点结尾。

换句话说:

$context.abc.value, $context.abc.value.random() - 应该匹配完整的字符串

$context.abc.value. - 应匹配除最后一个字符(点)以外的所有内容。

我现在的正则表达式是:

(?:^|\s)\$(?!\d)[\w.\[\]\(\)]+

这里有一个可以玩的 fiddle :https://regex101.com/r/PxCtUv/1

如何避免匹配尾随的点字符?

最佳答案

您可以将最后一个 [a.]+ 模式“分解”为 [a.]*[a]:

(?:^|\s)\$(?!\d)[\w.[\]()]*[\w[\]()]
^^^^^^^^^^^^^^^^^^^^

参见 regex demo .

详情

  • (?:^|\s) - 匹配字符串开头 (^) 或 (|) 的非捕获组一个空格 (\s)
  • \$ - $ 字符
  • (?!\d) - 如果 $ 字符之后有一个数字,则匹配失败的否定前瞻
  • [\w.[\]()]* - 零个或多个单词,., [, ], ( or ) 字符
  • [\w[\]()] - 一个词,., [, ], () 字符。

关于javascript - 匹配单词和句号,但不匹配结尾的句号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51206250/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com