控制字符的正则表达式是什么?

我正在尝试匹配\ ^ c形式的控制字符,其中c是控制字符的任何有效字符。我有这个正则表达式,但目前无法使用:\\[^][@-z]

我认为问题在于,插入符号(^)是正则表达式解析引擎的一部分。

回答:

^X使用pattern

匹配形式的ASCII文本字符串\^.,仅此而已。将形式的ASCII文本字符串\^X与模式匹配\\\^.。你不妨约束点缀到[?@_\[\]^\\],所以\\\^[A-Z?@_\[\]^\\][?\x40-\x5F]对于方括号字符类而言,它更容易阅读,因此\\\^[?\x40-\x5F]对于原义BACKSLASH,其后是原义CIRCUMFLEX,以及随后变成有效控制字符之一的事物而言,它更容易阅读。

请注意,这是打印出图案或从文件中读取的结果。这就是您需要传递给regex编译器的内容。如果您将其作为字符串文字使用,那么您当然必须将每个反斜杠加倍。`\\\\\\^[?\\x40-\\x5F]"是的,看起来很疯狂,但这是因为Java不像Groovy和Scala(或者Perl和Ruby)那样直接支持正则表达式。没有额外的bbaacckksslllllaasshheesssssess,正则表达式的工作总是很容易。:)

如果您有真正的控制字符,而不是它们的间接表示形式,则可以\pC对所有具有属性GC = Other的文字代码点使用,或\p{Cc}仅用于GC =

Control。

以上是 控制字符的正则表达式是什么? 的全部内容, 来源链接: utcz.com/qa/409350.html

回到顶部