带$sign的MatLab Regexprep语法
这里有一行使用了带$sign的MatLab Regexprep语法,matlab,Matlab,这里有一行使用了regexprep line = regexprep(line,'(,([^0-9])',' , $1'); $1语法是什么意思?中提供给regexprep的$1引用正则表达式中的第一个匹配标记 例如,如果我们匹配两个标记,我们可以用第一个标记替换匹配的字符串 regexprep('abcdefgh', '(ab)(cd)', '$1') % abefgh 第二代币 regexprep('abcdefgh', '(ab)(cd)', '$2') % cdefgh 或者两
regexprep
line = regexprep(line,'(,([^0-9])',' , $1');
$1
语法是什么意思?中提供给regexprep
的$1
引用正则表达式中的第一个匹配标记
例如,如果我们匹配两个标记,我们可以用第一个标记替换匹配的字符串
regexprep('abcdefgh', '(ab)(cd)', '$1')
% abefgh
第二代币
regexprep('abcdefgh', '(ab)(cd)', '$2')
% cdefgh
或者两者都是代币
regexprep('abcdefgh', '(ab)(cd)', '$1$2')
% abcdefgh
在您的示例中,([^0-9])
匹配的部分是$1
引用的标记。您发布的代码将从字符串中删除(,
),并将其替换为,
,而$1
将保持匹配的其余部分不变
line = 'abcd(,abcd';
regexprep(line,'(,([^0-9])',' , $1')
% abcd , abcd
提供给
regexprep
的中的$1
引用正则表达式中的第一个匹配标记
例如,如果我们匹配两个标记,我们可以用第一个标记替换匹配的字符串
regexprep('abcdefgh', '(ab)(cd)', '$1')
% abefgh
第二代币
regexprep('abcdefgh', '(ab)(cd)', '$2')
% cdefgh
或者两者都是代币
regexprep('abcdefgh', '(ab)(cd)', '$1$2')
% abcdefgh
在您的示例中,由([^0-9])
匹配的部分是由$1
引用的标记。您发布的代码从字符串中删除(,
),并将其替换为,
,而$1
保持匹配的其余部分不变
line = 'abcd(,abcd';
regexprep(line,'(,([^0-9])',' , $1')
% abcd , abcd
谢谢你的解释!谢谢你的解释!