我以为我在做\[/b\]
但机器不同意。
答案 0 :(得分:6)
如何将
[ ]
与正则表达式匹配?
\[ \]
应该做得很好。至少在Java正则表达式引擎中。
System.out.println("[ ]".matches("\\[ \\]")); // prints true
不知道从哪里获得/b
。也许你是在追求一个“空白”角色。空白字符最常见的表达式是\s
。即,你可以做\[\s\]
。
(匹配平衡 [
]
是另一个故事。正则表达式不太适合的任务。)
答案 1 :(得分:0)
如果不知道正在使用的正则表达式,那么很难回答,但是:
如果您正在用包含它们的语言(如JavaScript)编写正则表达式文字,那么只需在[
和]
前加一个反斜杠即可。 E.g:
var re = /\[\/b\]/;
...创建一个正则表达式,该表达式将匹配[
后跟/
,后跟b
后跟]
。 (我不得不逃避/
因为在JavaScript正则表达式文字中,当然/
是分隔符。)
在使用字符串指定正则表达式(例如Java)的语言中,转义可能会令人困惑,因为您必须使用反斜杠转义,但当然反斜杠在字符串中是特殊的所以你必须逃避它们。你最终得到了很多:
Pattern p = Pattern.compile("\\[/b\\]");
这会创建一个正如上面那样做的正则表达式,但请注意我们如何逃脱逃逸。
答案 2 :(得分:0)
'^[a-z]' // Should do fine in UNIX and possibly PERL/PHP too.
示例一,使用grep命令(类似于find)
grep '^[A-Z].?' file.txt
查找以大写字母开头的单词,然后查看是否为大写字母后的任何字符。
希望有所帮助。
DL