Ruby – 从字符串中删除模式
我有一个字符串模式,作为一个例子,看起来像这样:
WBA - Skinny Joe vs. Hefty Hal
我想从字符串中截断模式“WBA – ”并返回“Skinny Joe vs. Hefty Hal”。
假设“WBA”点将是任何字母或数字的序列,后跟空格,短划线和空格:
str = "WBA - Skinny Joe vs. Hefty Hal" str.sub /^\w+\s-\s/, ''
顺便说一下 – RegexPal是测试这些正则表达式的绝佳工具。
如果需要更复杂的字符串替换,可以考虑编写更复杂的正则表达式。 Otherise:
把事情简单化! 如果您只需要从字符串的开头删除"WBA - "
,请使用String#sub
。
s = "WBA - Skinny Joe vs. Hefty Hal" puts s.sub(/^WBA - /, '') # => Skinny Joe vs. Hefty Hal
您还可以使用以下代码段删除第一次出现的模式:
s[/^WBA - /] = ''