0

我正在查看以下字符串是否与其中的数字 1 匹配

23_13_15_145_34_1_135

23_13_15_145_34_1

1_23_13_15_145_3

我只想完全匹配它,所以第一个示例不能包含 13、15 或 145,只包含 1。

与字符串开头和结尾处的 1 的开头和结尾示例相同。

4

2 回答 2

2

尝试这个:

/(^|_)1(_|$)/

它检查1紧跟在字符串开头 ( ^) 或_字符之前,以及紧跟在另一个_字符或字符串结尾 ( $) 之后。

当然,?:如果您关心(并且您的 RE 引擎支持它),请添加到每个分组以避免捕获:

/(?:^|_)1(?:_|$)/
于 2012-07-09T21:50:31.640 回答
0

The following should work (uses lookaround):

(?<!\d)1(?!\d)

This regex will match a single 1 character, but only if there are not any digits before or after it.

于 2012-07-09T21:56:37.997 回答