替换包含特定文本的字符串+ r中的更改模式
replace string comprising specific text + changing pattern in r
我正在尝试删除特定模式,然后更改 R 脚本中的数字或字母组合。
要删除的模式:
“WIS 的 Alpha 代码 - 仅供参考 - 请参阅期刊 XXXX”
其中 XXXX 可以是 4 位数字、字母 + 3 位数字或 3 个字母的组合。
我已经试过了:
str_replace(x, '^\s "Alpha code for WIS - Info Only - see journal" \b[A-Z1-9]{4}\b','')
str_replace(x, '^\s "Alpha code for WIS - Info Only - see journal" ([0-9])','')
str_replace(x, '^\sAlpha code for WIS - Info Only - see journal ([0-9]+)','')
None 这些作品。
我也用 gsub 尝试过类似的正则表达式,但我没有再进一步。
我可以分 3 步进行,首先替换 4 位数字,然后替换字母组合,最后替换字母数字,如果这样更容易的话。
用 gsub
:
试试这样的正则表达式
"Alpha code for WIS - Info Only - see journal ([0-9]{4}|[a-zA-Z][0-9]{3}|[a-zA-Z]{3})
所以代码片段将是:
test <- "Line1: Alpha code for WIS - Info Only - see journal 1234\nLine2: Alpha code for WIS - Info Only - see journal A123\nLine3: Alpha code for WIS - Info Only - see journal AbC\nLine4: line 4 content"
result <- gsub("Alpha code for WIS - Info Only - see journal ([0-9]{4}|[a-zA-Z][0-9]{3}|[a-zA-Z]{3})", '', test)
print(result)
输出
[1] "Line1: \nLine2: \nLine3: \nLine4: line 4 content"
我正在尝试删除特定模式,然后更改 R 脚本中的数字或字母组合。
要删除的模式: “WIS 的 Alpha 代码 - 仅供参考 - 请参阅期刊 XXXX”
其中 XXXX 可以是 4 位数字、字母 + 3 位数字或 3 个字母的组合。
我已经试过了:
str_replace(x, '^\s "Alpha code for WIS - Info Only - see journal" \b[A-Z1-9]{4}\b','')
str_replace(x, '^\s "Alpha code for WIS - Info Only - see journal" ([0-9])','')
str_replace(x, '^\sAlpha code for WIS - Info Only - see journal ([0-9]+)','')
None 这些作品。 我也用 gsub 尝试过类似的正则表达式,但我没有再进一步。
我可以分 3 步进行,首先替换 4 位数字,然后替换字母组合,最后替换字母数字,如果这样更容易的话。
用 gsub
:
"Alpha code for WIS - Info Only - see journal ([0-9]{4}|[a-zA-Z][0-9]{3}|[a-zA-Z]{3})
所以代码片段将是:
test <- "Line1: Alpha code for WIS - Info Only - see journal 1234\nLine2: Alpha code for WIS - Info Only - see journal A123\nLine3: Alpha code for WIS - Info Only - see journal AbC\nLine4: line 4 content"
result <- gsub("Alpha code for WIS - Info Only - see journal ([0-9]{4}|[a-zA-Z][0-9]{3}|[a-zA-Z]{3})", '', test)
print(result)
输出
[1] "Line1: \nLine2: \nLine3: \nLine4: line 4 content"