正则表达式匹配多字符分隔符

时间:2017-03-24 06:04:35

标签: php regex

给定:一个包含两个或更多子串的字符串,用" - "子串中可以有空格和破折号,只要它们不是那么精确的序列。

如何匹配PHP中的所有子字符串?

例如:

  • " substring1 - substring2"匹配" substring1"和" substring2"
  • " sub-string-1 - sub-string -2 - sub-string-3"匹配"子字符串-1","子字符串-2"和"子字符串-3"

谢谢。

1 个答案:

答案 0 :(得分:1)

您似乎想要使用#ifndef Constants_h #define Constants_h #define LoginUrl @"http://dev.abc.in/app/login" #endif + space + -来展开字符串。它可以在没有正则表达式的情况下完成:

space

请参阅PHP demo

如果你想处理任何空格及其任何数量(1或更多),请使用基于正则表达式的分割:

explode(" - ", $s);

此处,preg_split('~\s+-\s+~', $s) 匹配1个以上的空格,\s+-\s+和1个以上的空格。要匹配任何Unicode空格,请添加-修饰符:u。要匹配任何短划线,请使用'~\s+-\s+~u'