gpt4 book ai didi

regex - 正则表达式字边界和特殊字符

转载 作者:行者123 更新时间:2023-12-05 00:06:26 24 4
gpt4 key购买 nike

我有一个正则表达式来转义搜索字符串中的所有特殊字符。这很好用,但是我似乎无法让它与单词边界一起使用。例如,用干草堆

add +

或者
add (+)

和针
+

正则表达式 /\+/gi匹配“+”。然而正则表达式 /\b\+/gi没有。关于如何使这项工作的任何想法?

使用
add (plus)

作为大海捞针和 /\bplus/gi作为正则表达式,它匹配得很好。我只是不明白为什么转义字符有问题。

最佳答案

\b是一个零宽度断言:它不消耗任何字符,它只是断言某个条件在给定位置成立。单词边界断言该位置要么在一个单词字符前面不跟一个,要么在一个单词字符后面不跟一个。 (“单词字符”是字母、数字或下划线。)在您的字符串中:

add +

...开头有一个单词边界,因为 a前面没有一个单词字符,第二个后面有一个 d因为它后面没有一个单词字符。 \b在您的正则表达式中( /\b\+/ )试图在空格和 + 之间进行匹配,这不起作用,因为这两个都不是单词字符。

关于regex - 正则表达式字边界和特殊字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3241692/

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