【发布时间】:2013-06-13 00:27:37
【问题描述】:
我正在 MATLAB 中处理文本。为此,我需要我的正则表达式才能正常工作。
到目前为止,我在下面有这个正则表达式,它几乎适用于所有内容,但我想在其中添加一些内容,以便它读取撇号作为单词的一部分。
V1 = regexp(inpstr,'\w*[^a-zA-Z0-9\ _\ -\ "\ *\f\n\r\t\v\x20]?','match');
所以,我的一个示例性问题是:如果我有一个字符串:
'Hi, let's play some ball.'
我希望正则表达式给我'Hi,' - 'let's' - 'play' - 'some' - 'ball.'
目前它给了我'Hi,' - 'let' - 's' - 'play' - 'some' - 'ball.'
我想问题是我不能只将 \ ' 添加到正则表达式中,因为 MATLAB 使用了 '.
我尝试添加它并且发生了这种情况:??? Error: File: TestScript.m Line: 13 Column: 38
The input character is not valid in MATLAB statements or expressions.
任何帮助将不胜感激 =)
【问题讨论】:
-
我需要它在不操作输入文本的情况下工作。
-
尝试使用 \' ' 而不是 \' 因为你需要逃避它..
-
“不操作输入文本”是什么意思?
-
我认为链接中的解决方案是在字符串中添加一个额外的撇号。那将是一种操纵。
标签: regex matlab apostrophe