用regexp()提取字符串

1次查看(最近30天)
祺欣
祺欣 2021年4月13日
评论道: 祺欣2021年4月14日
我有一个存储字符串的变量。字符串包含字母、数字、下划线和符号(没有特定的顺序,而且不止一次)。现在我想通过regexp()提取字符串。提取的字符串应该以字母、数字和下划线开始,以字母或数字结束,但后缀需要排除'_'或'_in'或'_out'或'_out[]',我怎么做?谢谢。
str_new = regexp (str_old,“[^ $ ^ |]\ w * _ * \ w *[^ _ ^找到^ _in ^找到[]^ _in[]]”“匹配”
我想用'^'来排除'[]'中的字符串,但它只是区分一个字母或另一个字母…
例如:
str_old = ' abc_in美元'
str_new =美国广播公司
str_old = ' def_in_hij_out[]”
str_new = ' def_in_hij '
str_old =“xyz”
str_new =“xyz”

接受的答案

斯蒂芬。
斯蒂芬。 2021年4月13日
编辑:斯蒂芬。 2021年4月13日
输入= {“abc_in美元”“def_in_hij_out[]”“xyz”
输入=1×3单元阵列
{“abc_in美元”}{“def_in_hij_out[]”}{“xyz”}
= regexprep(输入,{在| _((\[\])吗?)?\ > '“\ W +”},''
了=1×3单元阵列
{' abc '}{‘def_in_hij}{“xyz”}
1评论
祺欣
祺欣 2021年4月14日
多好的主意!

登录评论。

更多的答案(0)

社区寻宝

在MATLAB中心找到宝藏,并发现社区如何可以帮助你!

开始狩猎!