当尝试解析字符串时,提到的字符串我正在使用此正则表达式:.*@${username}.*
其中${username}
是参数。
如果${username} = 'c'
然后这变为.*@c.*
所以这会错误地匹配hello @cat
。
我需要一个匹配整个字符串的正则表达式:
@c
hello @c
@c hello
hello @c hello
且不匹配:
@cat
答案 0 :(得分:0)
只需确保用户名后面没有用户名:@$username\([^a-z]\|$\)
。请注意,根据regexp解析器,您可能需要删除反斜杠。
答案 1 :(得分:0)
这似乎有效。
.*@\bc\b.*
https://regex101.com/r/OYjmvQ/1
我也想知道为什么它不能在我的实际代码中工作(Java)和derp:Java Regex Word Boundaries
必须双重逃脱:
.*@\\bc\\b.*