Ruby 正则表达式将某物放入组中(在或的情况下)
我将一个数字和一个字母按此正则表达式分组:Ruby 正则表达式将某物放入组中(在或的情况下),ruby,regex,replace,Ruby,Regex,Replace,我将一个数字和一个字母按此正则表达式分组: (\d*)(\D) 当数字存在时,结果为: [12,letter] ["",letter] 当没有数字时,结果是: [12,letter] ["",letter] 我怎样才能放一些东西而不是空字符串? 像这样: (\d*|put "1")(\D) Regex可以做类似的事情吗?您可以编写自己的匹配函数 函数匹配输出(regexp,str){ var match=str.match(regexp); 如果(匹配[1]=“”){ 匹配[1]=
(\d*)(\D)
当数字存在时,结果为:
[12,letter]
["",letter]
当没有数字时,结果是:
[12,letter]
["",letter]
我怎样才能放一些东西而不是空字符串?
像这样:
(\d*|put "1")(\D)
Regex可以做类似的事情吗?您可以编写自己的匹配函数
函数匹配输出(regexp,str){
var match=str.match(regexp);
如果(匹配[1]=“”){
匹配[1]=“1”;
}
复赛;
}
结果=匹配输出(/(\d*)(\d)/,“L”);
控制台日志(结果)代码>否,正则表达式只匹配文本中的内容,您不能使用它传递除-此处-空字符串以外的任何默认值。请记住,在您成功的情况下:[12,字母],这是整数12,但在默认情况下[“1”,字母],这是字符串“1”,而不是整数;如果结果的第一个元素是什么类很重要。