有一个小文本列表。 结尾中的某些文本可能包含由空格分隔的数字序列。对于这种情况,必须在文本中保留此序列的第一个数字,从而切断剩余的数字序列。怎么做? 例如:
答案 0 :(得分:3)
使用gsub()
使用以下模式:
(\\d+)(?: \\d+)*$
然后替换为第一个捕获组,即\\1
。
x1 <- "Some words"
x2 <- "Some words 544 11"
x3 <- "Some 1 words 3 33 444"
result1 <- gsub("(\\d+)(?: \\d+)*$", "\\1", x1)
result2 <- gsub("(\\d+)(?: \\d+)*$", "\\1", x2)
result3 <- gsub("(\\d+)(?: \\d+)*$", "\\1", x3)
print(result1)
print(result2)
print(result3)
在这里演示: