解析某些字符之间的字符串的最佳函数是什么?
例如:
CHI 3 - MIN 0
1st
CHI - Kane (Seabrook, Toews)
2nd
CHI - Kane (Seabrook, Toews)
3rd
CHI - Kane (Seabrook, Toews)
这是曲棍球比赛的统计数据,第一个名字是进球者,第二个名字是助攻。
我只需要在 $goalscorer 的“-”和“(”之间抓取
$assist1 的“(”和“,”之间
在 $assist2 的“,”和“)”之间添加
结果应该是:
$goalscorer = Kane
$assist1 = Seabrook
$assist2 = Toews
最终我想制作一个大脚本,我可以在其中粘贴一堆得分,并进行循环运行并向玩家进球/助攻列添加“+1”。但现在,我想知道如何解析 boxscore。
非常感谢任何帮助!
最佳答案
这将与您所拥有的相匹配
https://regex101.com/r/yT7aW7/1
$str = "CHI - Kane (Seabrook, Toews)";
preg_match('/^(\w+)\s-\s(?P<goalscorer>\w+)\s\((?P<assist1>\w+),\s(?P<assist2>\w+)\)$/', $str, $matches);
英文
-
^
行首 -
\w
任何工作字符都包括 a-zA-Z_ -
(
\w+)
捕获,+
不止一个 -
\s
单个空格 -
-
连字符 -
?P<name>
命名的捕获组 -
\(
或\)
文字括号,与捕获括号相反。 -
$
行尾
其中大部分只是重复这些,这是一个非常基本的正则表达式。
关于php - 解析大文本字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31798168/