正则表达式的匹配问题.我想要匹配英文字母的大部分(比如除了ahz的其它小写字母),可以使用[a-z^ahz]这种形式吗?还是必须把所有的匹配字母都写出来?
2019-04-16
正则表达式的匹配问题.
我想要匹配英文字母的大部分(比如除了ahz的其它小写字母),可以使用[a-z^ahz]这种形式吗?还是必须把所有的匹配字母都写出来?
优质解答
不同的语言用不同的正则实现.
对于JAVA来说就可以使用下面的写法
[abc] a、b或 c(简单类).例如[egd]表示包含有字符e、g或d.
[^abc] 任何字符,除了 a、b或 c(否定).例如[^egd]表示不包含字符e、g或d.
[a-zA-Z] a到 z或 A到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a到 d或 m到 p:[a-dm-p](并集)
[a-z&&[def]] d、e或 f(交集)
[a-z&&[^bc]] a到 z,除了 b和 c:[ad-z](减去)
[a-z&&[^m-p]] a到 z,而非 m到 p:[a-lq-z](减去)
不同的语言用不同的正则实现.
对于JAVA来说就可以使用下面的写法
[abc] a、b或 c(简单类).例如[egd]表示包含有字符e、g或d.
[^abc] 任何字符,除了 a、b或 c(否定).例如[^egd]表示不包含字符e、g或d.
[a-zA-Z] a到 z或 A到 Z,两头的字母包括在内(范围)
[a-d[m-p]] a到 d或 m到 p:[a-dm-p](并集)
[a-z&&[def]] d、e或 f(交集)
[a-z&&[^bc]] a到 z,除了 b和 c:[ad-z](减去)
[a-z&&[^m-p]] a到 z,而非 m到 p:[a-lq-z](减去)