在R中搜索并从String中提取

时间:2013-06-24 04:34:45

标签: r

我有一个字符串:“开发文档ID Z585设计编号PZ585A2202标记为”

我需要提取字符串的字母数字部分:“PZ585A2202”。 试过:

p_string <- "Development Document ID Z585 Design No. PZ585A2202 Marked as"
regexp <- "(([:alnum:]))"
str_extract(p_string,regexp)

但显然,我错了。有没有办法可以识别字符串中的字母数字部分并将其提取出来? 不幸的是,我不会知道它的位置或之前或之后的位置。

1 个答案:

答案 0 :(得分:1)

假设字符串正好是10个字符,只包含大写字母和数字,你可以这样做:

regmatches(p_string, regexpr("([A-Z0-9]{10})", p_string))

如果字符串中包含超过10个字母的单词,则可能会出现误报,但除非您有更多识别功能(如评论中所述),否则您似乎不太可能做得更好。