regex - 如何从字符串中获取非字母分隔符

标签 regex string groovy character special-characters

我有一种情况,我想从给定的字符串中获取分隔符,如下所示:-

String str1 = "saurabh|om|anurag|abhishek|jitendra"

String str2 = "amit,ankur,sumit,aniket,suheel"

String str3 = "aj-kumar-manav-lalit-gaurav"

-------

在上面的字符串中,我想将分隔符设为:-

String separatorStr1 = "|"
String separatorStr2 = ","
String separatorStr3 = "-"

注意:- 分隔符在字符串中始终是非字母的

有什么办法可以实现这一点吗?

最佳答案

使用groovy regexfind([^\w]是任何非字母数字字符)

def getSeparator = { str ->
    str.find(~/[^\w]/)
}

String str1 = "saurabh|om|anurag|abhishek|jitendra"
String str2 = "amit,ankur,sumit,aniket,suheel"
String str3 = "aj-kumar-manav-lalit-gaurav"

assert getSeparator(str1) == '|'
assert getSeparator(str2) == ','
assert getSeparator(str3) == '-'

关于regex - 如何从字符串中获取非字母分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38502002/

相关文章:

c# - 为什么这个正则表达式匹配?

string - 将字符串转换为任何其他原始类型的惯用方法

java - 将每第 N 个字符添加到字符串中

string - 给定两个字符串,找到最长的公共(public)字符包

android - 在Android插件任务上调用doFirst

grails - 在具有equals方法的域类上, 'as JSON'出现Grails 2.5.5错误

grails - 在 Grails 中使用 Groovy Trait 测试失败

python - 从 HTML 中提取标签和属性 - 困难的方法

javascript - 有没有人有一个函数可以将转义字符添加到纯文本字符串中,以便可以在javascript的正则表达式中将其逐字对待?

javascript - 获取文本信息,对它们进行排序和编号,并在编号和每个 block 之后放置 ";"