1

如何为除一个单词以外的任何字符定义正则表达式组?

我知道已经问过几个类似的问题,但是在复杂的正则表达式中找不到解决方法:

我的正则表达式看起来像这样:

...(?<Subfield7>.{1,16})(?<Subfield8>//.{1,16})?

Subfield7 应该匹配除两个正斜杠之外的任何内容,因为它们是下一个子字段的分隔符。

  • ... abcdefghijklmnop //abcdefghijklmnop -> 子字段 7:abcde...,子字段 8://abcde...
  • ... 1.3,5-7 9/11 //abcdefghijklmnop -> 子字段 7:1.3,5-7 9/11,子字段 8://abcde...
  • ... 12345 //abc//123//456 -> 子字段 7:12345,子字段 8://abc//123//456

编辑:
我的目标是识别子字段 7 和子字段 8。根据定义,子字段 8 以两个前导斜杠开头,但子字段 7 也可能包含(单个)斜杠。子字段 7 和 8 的长度是可变的。

4

1 回答 1

0

如果你想要任何非空字符串,//你可以使用

"(?!.*//).{1,16}"

这匹配/a/并且不匹配//a//a//b

这是你想要的吗?

于 2013-01-09T09:45:40.987 回答