如何用正则表达式拆分这些行

时间:2015-05-09 05:03:16

标签: php regex

我有一个页面,我需要将其上的单词拆分为数组。

我的文件是这样的

dssds
* Eski çağlarsda bazıhastaslıklara isyi geldisğine insan büyüslü söz
dsds
* Abramsak işi, idare.
dsdsds
* Abramsak işi, idare.
dsdsds
* Abramdak işi, idare.

我需要把所有没有*的单词放在他们的行中,并且在一个数组中的同一行中有一个单词。如果可以的话 我怎么能用正则表达式做到这一点?

我的输出数组必须像

[abrakadabra, abrsamaas ,abradsma ,aswabrama ]

1 个答案:

答案 0 :(得分:3)

您只需使用

即可
^[^*]\S*

这样做并match代替split。请参阅演示。

https://regex101.com/r/iV6mP5/2

$re = "/^[^*]\\S*/m"; 
$str = "abrakadabra\n* Eski çağlarda bazıhastalıklara iyi geldiğine inanılan büyülü söz\nabramaas\n* Abramak işi, idare.\nabradsma\n* Abramak işi, idare.\naswabrama\n* Abramak işi, idare."; 

preg_match_all($re, $str, $matches);