0

正则表达式的新手并在创建正则表达式时寻求帮助以寻求以下内容:

数据项由六个字符串组成,如下例所示

1)“100100”

2)“110011”

3) “010000”

4)“110011”

5)“111111”

6) “000111”

需要使用正则表达式来查找数据

  • 1 在第 1 位或 1 在第 4 位:项目 1、2、4、5 和 6 应匹配

  • 1 在第 2 位:项目 2,4 和 5 应该匹配

  • 1 在第 5 和第 6 位:第 2、4、5 和 6 项应匹配

4

4 回答 4

0

给定您的样本,这些将起作用:

  • 1 在第 1 位或 1 在第 4 位:项目 1、2、4、5 和 6 应匹配

1.....|...1...

  • 1 在第 2 位:项目 2,4 和 5 应该匹配

.1....

  • 1 在第 5 和第 6 位:第 2、4、5 和 6 项应匹配

....11

或者,如果您想匹配这些规则中的任何一个,请将它们与|(or) 运算符结合使用。

例子:

http://regexpal.com/?flags=g®ex=(1.....%7C...1...%7C.1....%7C....11)&input=100100%0A %0A110011%0A%0A010000%0A%0A110011%0A%0A111111%0A%0A000111

于 2013-01-18T05:11:36.477 回答
0

如果总是只有 1 和 0 的字符串,则应将它们视为二进制数并使用逻辑运算符来查找匹配项。

于 2013-01-17T21:11:50.717 回答
0

试试这个正则表达式

([1][0-1]{2}[1][0-1]{2})|([0-1][1][0-1]{4})|([0-1]{4}[1]{2})

在这里找到解释和演示http://www.regex101.com/r/vD9jE7

于 2013-01-18T05:24:19.923 回答
0

这是一个例子。如有必要,用零更改点。 /^(11..|.1.1)11$/

^              # beginning of string
(              # either
    11..     # 11 and any 2 char
    |          # or
    .1.1     # any char, 1, any char, 1
)
11
$             # end of string
于 2013-01-18T05:31:15.790 回答