正则表达式 - 如何获得任何字符排列?

时间:2017-03-03 13:09:48

标签: java regex string

对于这个具体的例子,我想在Java中进行正则表达式模式匹配,以确定字符串是否与此模式匹配,它必须是:

<APOSTROPHE><ANY WORD WITHOUT SPACES><APOSTROPHE>

我尝试将其设置为"(')([\w+])(')",但之后不会考虑任何特殊字符!或%。

我如何做到这一点,我可以得到 &#34; &#39;您好!&#39; &#34; 要么 &#34; &#39; Yo%#@&#39; &#34;

被认为是有效的模式?

3 个答案:

答案 0 :(得分:1)

您可以使用此RegEx:^'[\\S]+'$

String pattern = "^'[\\S]+'$";
Pattern patt = Pattern.compile(pattern);
System.out.println(patt.matcher("'Yo%#@'").matches()); // must pass
System.out.println(patt.matcher("'Hello'").matches()); // must pass
System.out.println(patt.matcher("'Hel lo'").matches()); // must fail

希望这有帮助!

答案 1 :(得分:0)

对于'符号之间的简单搜索,您可以使用

'([^']*)'

[^']包含任何非撇号的内容。

答案 2 :(得分:0)

我想要<APOSTROPHE><ANY WORD WITHOUT SPACES><APOSTROPHE>

只需:"^'[\S]*'$"Pattern p = Pattern.compile("^'[\S]*'$");

http://www.journaldev.com/2433/spring-mvc-tutorial对您有用,在论坛中询问之前总是在谷歌搜索“myQuestion + java”,你肯定会找到它