我有四种类型的字符串,如下所示。区别在于两个数字(23)
和(15)
可能在string中存在,也可能不在string中。
(23) Abc 11 (15) Krtss 14 (25:05 IN 2ND)
Abc 11 (15) Krtss 14 (25:05 IN 2ND)
(23) Abc 11 Krtss 14 (25:05 IN 2ND)
Abc 11 Krtss 14 (25:05 IN 2ND)
文本Abc
和Krtss
可以是任意两个名称。这些名称甚至可以包含空格或连字符。
:
- 从所有4个字符串中提取"Abc"的单个正则表达式。
- 从所有4个字符串中提取"Krtss"的第二个正则表达式。
这里Abc
和Krtss
是两个名称,也可以包含空格和连字符。
如果一个单一的正则表达式是不可能的,请给我一个小的PHP代码片段,以获得所需的输出
如果您只是想要一个简单的答案来获取这两个名称,那么执行以下操作:
/.+?('w['w's-]*) 'd+.*? (['w's-]+) 'd+ '(/
请注意,对于第一个名字,我强制它以字母开头,以避免意外地占用第一个带括号的数字(如果它存在)之后的空间。如果没有问题,您可以使parenns中的regex的第一部分与第二部分相同。