Java 正则表达式查找前后没有字母数字字符的特定子字符串
Java regex to find a specific substring without alpha numeric characters before or after it
不太熟悉正则表达式,所以如果可能的话可以使用一些正确方向的指针。
我有一些可能的字符串值,可能类似于以下内容:
"88976756 ABC 33ddf33a24"
"89999ABC 3hhhj33"
"7ffhh7AB C78788sd"
我需要的是查找值 ABC 是否存在于这些字符串中,但前后没有字母数字字符。
在上面的例子中,只有第一个应该return ABC。
第二个示例前面有一个数字,第三个示例中间有一个 space。
如果有人知道执行此操作的方法或有一些关于执行此操作的最佳方法的文档,我将不胜感激。
编辑:
上面的字符串可能有点简单。下面是一些进一步的例子
"67676/'ABC'7866cc"
应该可以找到 ABC,因为它前后没有字母数字字符
"88xx#'\A2C"
应找到 A2C,因为在
之前或之后没有字母数字字符
"88xx# A2C&&&88"
应找到 A2C,因为在
之前或之后没有字母数字字符
"88xxA2C&&&88"
应该找不到 A2C,因为它前面有一个字母数字字符
谢谢
使用词边界匹配器\b
您的正则表达式可以像
一样简单
\bABC\b
不太熟悉正则表达式,所以如果可能的话可以使用一些正确方向的指针。
我有一些可能的字符串值,可能类似于以下内容:
"88976756 ABC 33ddf33a24"
"89999ABC 3hhhj33"
"7ffhh7AB C78788sd"
我需要的是查找值 ABC 是否存在于这些字符串中,但前后没有字母数字字符。
在上面的例子中,只有第一个应该return ABC。 第二个示例前面有一个数字,第三个示例中间有一个 space。
如果有人知道执行此操作的方法或有一些关于执行此操作的最佳方法的文档,我将不胜感激。
编辑: 上面的字符串可能有点简单。下面是一些进一步的例子
"67676/'ABC'7866cc"
应该可以找到 ABC,因为它前后没有字母数字字符
"88xx#'\A2C"
应找到 A2C,因为在
之前或之后没有字母数字字符"88xx# A2C&&&88"
应找到 A2C,因为在
之前或之后没有字母数字字符"88xxA2C&&&88"
应该找不到 A2C,因为它前面有一个字母数字字符
谢谢
使用词边界匹配器\b
您的正则表达式可以像
一样简单\bABC\b