用于删除数字的正则表达式,但以#开头的单词除外

问题描述 投票:2回答:4

我有一些字符串,可以包含字母,数字和'#'符号。

我想删除除以'#'开头的单词以外的数字>

这里是一个例子:

"table9 dolv5e #10n #dec10 #nov8e 23 hello"

预期的输出是:

"table dolve #10n #dec10 #nov8e  hello"

我该如何使用正则表达式,字符串或gsub?

我有一些字符串,可以包含字母,数字和'#'符号。我想删除除以“#”开头的单词以外的数字,这是一个示例:“ table9 dolv5e#10n#dec10#nov8e 23 ...

r regex gsub stringr
4个回答
0
投票

Base R解决方案:


0
投票

例如,您使用gsub删除数字:


0
投票

您可以将字符串分割成空格,如果标记不是以'#'开头,请从标记中删除数字,然后粘贴回去:


-1
投票
gsub("\\s\\d+\\s", " ", "table9 dolv5e #10n #dec10 #nov8e 23 hello")
[1] "table9 dolv5e #10n #dec10 #nov8e hello"

0
投票

这里是sub方法:

© www.soinside.com 2019 - 2024. All rights reserved.