我是编程的初学者。我有一个字符串例如"测试:1"和"测试:2"。我想删除":1"和":2" (包含 :)。我怎么能用正则表达式来做呢?
答案 0 :(得分:2)
嗨,安德鲁很容易。把字符串想象成是一个字符数组(字母),因为它实际上是IS。如果你要删除的字符串部分总是在字符串的末尾,并且总是相同的长度,就像这样:
var exampleString = 'test:1';
exampleString.length -= 2;
多数民众赞成你刚刚删除了字符串的最后两个值(字母)(charArray)
如果你不能避免它总是在最后或删除你要使用szymon版本的字符数量
答案 1 :(得分:1)
使用Groovy至少有几种方法可以做到这一点。如果您想坚持使用正则表达式,可以将表达式^([^:]+)
(表示字符串开头的所有字符,直到达到:
)应用于StringGroovyMethods.find(regexp)
方法,例如
def str = "test:1".find(/^([^:]+)/)
assert str == 'test'
或者,您可以使用旧的String.split(String delimiter)
方法:
def str = "test:1".split(':')[0]
assert str == 'test'