所以我有一个文件名列表,我希望将它们拉到一个数组中。
以下是我将尝试从中提取数据的列表示例:
JString
正则表达式是否能够通过此列表进行解析并将这些位拉出来:
-------------
PENDING: (fs) gm_construct.bsp
PENDING: (fs) gm_flatgrass.bsp
...
例如?
然后需要将每个条目推送到数组中。
此表达式是否也能够比这更长的时间运行列表,并且还可以处理不同的前缀,如:
gm_construct
gm_flatgrass
答案 0 :(得分:0)
伪代码:
str.replaceAll("PENDING: (fs) ", "");
str.replaceAll(".bsp", "");
str.replaceAll("-", "");
str[] = str.split("\n");
str []将包含您的文件名列表。
这基本上取代了所有“PENDING”内容和“.bsp”内容并分割线条。
希望这有帮助!
P.S。,这根本不需要正则表达式! (越容易越好)
答案 1 :(得分:0)
最后,一位朋友想出了一个小正则表达式来做我想做的事。可能不像其他答案那么简单,但它是我个人将使用的那个,并且对我的用例工作正常。
preg_match_all("/(?<=fs\)).*?(?=\.bsp)/", $maps, $map_list);
这对我有用。将每个文件名拆分为一个数组,然后我可以迭代它。