我正在使用 Ruby 2.4。我想替换字符串开头不包含任何字母的单词。 “单词”是由空格(或行的开头或结尾)包围的任何字符序列。例如,这个字符串
123 255 abc
会变成
abc
虽然这个字符串
1556 2a2 ccc
会变成
2a2 ccc
我试过了
string.gsub(/\A[[:space:]]*[^\p{L}]+/, '')
但这还没有完成。如何替换字符串开头不包含字母的所有单词?
最佳答案
您可能需要一个词边界 (\b
) 和 anchor (而不是 \A
)。
这按预期工作:
^[[:space:]]*[^\p{L}]+\b
正如@Cary 在评论中指出的那样,您甚至可以将表达式简化为
\A[^\p{L}]+\
(或者:^[^\p{L}]+\
每行开头)。
关于ruby - 如何替换字符串开头不包含字母的单词?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46621437/