gpt4 book ai didi

php - 如何提取等号后的数据?

转载 作者:行者123 更新时间:2023-12-02 23:39:49 25 4
gpt4 key购买 nike

到目前为止,我编写了这个正则表达式,但我无法从中获取正确的数据:

一些文字:TST = 我需要的数据,TSA = 我需要比较的更多数据,SMT = 更多我需要的内容

等号前有 2-3 个大写字母,然后是其数据,直到逗号。

preg_match_all("/Some\s+text:\s+(?:([A-Z]{2,3})(?:\s+\=(\s\w+)*))(?:\,\s+([A-Z]{2,3})(?:\s+\=(\s\w+)*))*/mi" , $input_lines, $output_array);

正则表达式提取(文本、TST、需要、SMT、需要),但我正在尝试获取:

0.text 1.TST 2.Data I need 3.TSA 4.More that I need to compare 5.SMT 6.more that that I need

有人可以解释一下我犯了什么错误以及我应该如何纠正这个正则表达式吗?

最佳答案

根据您的原始描述:等号前有 2-3 个大写字母,然后是逗号之前的数据。,您可以构造一个相对简单的表达式,如下所示:[A-Z]{ 2,3}\s*=\s*(.+?)(,|$)(示例可用 here )。

这应该会找到 2 或 3 个大写字母,后跟 0 个或多个空格,后跟等号,后跟 0 个或多个空格,最后跟一些文本。当它找到逗号或字符串末尾时,它将停止匹配。

这应该将您想要的数据捕获到正则表达式组中(应该在 $output_array 内)。

关于php - 如何提取等号后的数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32066260/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com