regex - 这个正则表达式做什么?时髦

标签 regex grails groovy

我需要了解此正则表达式的功能,但是阅读有关正则表达式的groovy.codehaus文档似乎对我没有帮助

matches: "[\\p{L}\\p{N}\\s-.()_&]+"

http://groovy.codehaus.org/Regular+Expressions

任何提示,在此先感谢

最佳答案

首先,所有反斜杠均被转义,因此[\\p{L}\\p{N}\\s-.()_&]+将被读取为
[\p{L}\p{N}\s-.()_&]+
[ ]是一个字符类,它使用以下语法匹配两个方括号之间的所有内容:
\p{L}匹配Unicode属性L,letter\p{N}与Unicode属性N,数字匹配\s是任何空格字符-.()_&?在字符类中没有特殊含义,因此可以按字面意义读取它们

因此,[\p{L}\p{N}\s-.()_&]与提到的四个选项中的任何单个字符匹配。
最后的+表示“一个或多个”。

基本上是[a-zA-Z0-9\s-.()_&]+或更短的[\w\s-.()&]+的Unicode版本

关于regex - 这个正则表达式做什么?时髦,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17294120/

相关文章:

java - java.util.regex.Matcher.group 和字符串比较之间的不连续性

java - 正则表达式计算字符串中单引号的数量(不包括2个连续双引号)

grails - 添加Spring安全性插件时找不到脚本 'S2Quickstart'

Jenkins 管道: Get build output from slave agent

groovy - 不要删除标记为 "Keep this build forever"的 Jenkins 构建 - 用于删除 Jenkins 构建的 Groovy 脚本

grails - Grails应用程序随机挂起

Mysql 在正则表达式上抛出异常

javascript - 如何在 javascript 中检查字符串是否包含特殊字符或空格(但允许连字符,字符串末尾除外)?

javascript - Grails Controller 的值打破了gsp中的javascript

eclipse - 使用Groovy-Eclipse插件在Grails中进行开发