标签: preg-split

按分隔符拆分字符串,但如果它已转义则不会

如何通过分隔符拆分字符串,但如果它被转义则不能?例如,我有一个字符串:

1|2\|2|3\\|4\\\|4
Run Code Online (Sandbox Code Playgroud)

分隔符是|和转义分隔符\|.此外,我想忽略逃脱反斜杠,因此\\||仍然是一个分隔符.

所以使用上面的字符串,结果应该是:

[0] => 1
[1] => 2\|2
[2] => 3\\
[3] => 4\\\|4
Run Code Online (Sandbox Code Playgroud)

php regex preg-split

52
推荐指数
2
解决办法
4605
查看次数

preg_split如何在结果中包含拆分分隔符?

我有这个简单的模式,将文本分成句点

$text = preg_split("/[\.:!\?]+/", $text);
Run Code Online (Sandbox Code Playgroud)

但我想包括.: 要么 !在数组项的末尾

IE现在用于"好:新闻!每个人!" 我有:

array("good", "news", "everyone", "");
Run Code Online (Sandbox Code Playgroud)

但我想要的是:

array("good:", "news.", "everyone!", "");
Run Code Online (Sandbox Code Playgroud)

php preg-split

20
推荐指数
2
解决办法
1万
查看次数

在PHP中,哪个更快:preg_split还是爆炸?

这可能听起来像一个愚蠢的问题,但是:当使用它来提取php中的搜索查询中的关键字时,这会更快:

$keyword = preg_split('/[\s]+/', $_GET['search']);
Run Code Online (Sandbox Code Playgroud)

要么

$keyword = explode(' ', $_GET['search']);
Run Code Online (Sandbox Code Playgroud)

php explode preg-split

20
推荐指数
3
解决办法
1万
查看次数

使用正则表达式匹配所有以4位数结尾的子串

我试图在PHP中拆分一个字符串,如下所示:

ABCDE1234ABCD1234ABCDEF1234
Run Code Online (Sandbox Code Playgroud)

进入一个字符串数组,在这种情况下,看起来像这样:

ABCDE1234
ABCD1234
ABCDEF1234
Run Code Online (Sandbox Code Playgroud)

因此,模式是"未定义的字母数,然后是4位数,然后是未定义的字母数和4位数等."

我正在尝试使用preg_split分割字符串,如下所示:

$pattern = "#[0-9]{4}$#";
preg_split($pattern, $stringToSplit);
Run Code Online (Sandbox Code Playgroud)

它返回一个包含第一个元素中的完整字符串(不是拆分)的数组.

我猜这里的问题是我的正则表达式,因为我不完全理解如何使用它们,我不确定我是否正确使用它.

那么使用正确的正则表达式是什么?

php regex string preg-split

17
推荐指数
3
解决办法
1531
查看次数

用反斜杠分割文本\?

我搜索了几个小时.如何用"\"分隔字符串

我需要将HORSE\COW分成两个单词并丢失反斜杠.

php explode preg-split

12
推荐指数
3
解决办法
2万
查看次数

在PHP中以大写字母分割?

我发现了这个类似的问题,但它没有回答我的问题,大写字母拆分.

我有一个骆驼案的字符串.我想在每个大写字母中分解该字符串,如下所示.

$str = 'CamelCase'; // array('Camel', 'Case');
Run Code Online (Sandbox Code Playgroud)

我到目前为止:

$parts = preg_split('/(?=[A-Z])/', 'CamelCase');
Run Code Online (Sandbox Code Playgroud)

但是结果数组总是在开头时以空值结束!$parts看起来像这样

$parts = array('', 'Camel', 'Case');
Run Code Online (Sandbox Code Playgroud)

如何摆脱数组开头的空值?

php preg-split

10
推荐指数
1
解决办法
3648
查看次数

如何在php中使用preg_split()?

任何人都可以向我解释如何使用preg_split()函数?我不明白这样的模式参数"/[\s,]+/".

例如:

我有这个主题:is is.我希望结果如下:

array (
  0 => 'is',
  1 => 'is',
)
Run Code Online (Sandbox Code Playgroud)

所以它会忽略空间和全程,我怎么能这样做?

php preg-split

10
推荐指数
2
解决办法
5万
查看次数

php拆分为preg_split

我想转换以下拆分功能,我一直使用preg_split ..它有点混乱,因为值会不时改变..

$root_dir = 'www';
$current_dir = 'D:/Projects/job.com/www/www/path/source';
$array = split('www', 'D:/Projects/job.com/www/www/path/source', 2);
print_r($array);
Run Code Online (Sandbox Code Playgroud)

php regex split preg-split

9
推荐指数
1
解决办法
2万
查看次数

正则表达式preg_split由新行

这是我的档案:

0.0 5.0 5.0 6.0 7.0 2.0 5.0 2.0 1.0 5.0 5.0 1.0 2.0 7.1 5.0
5.0 0.0 5.0 5.0 5.0 2.0 5.0 1.0 5.0 6.0 6.0 6.0 6.0 1.0 7.1
5.0 5.0 0.0 6.0 1.0 6.0 5.0 5.0 1.0 6.0 5.0 7.0 1.0 5.0 6.0
6.0 5.0 6.0 0.0 5.0 2.0 1.0 6.0 5.0 6.0 2.0 1.0 2.0 1.0 5.0
7.0 5.0 1.0 5.0 0.0 7.0 1.0 1.0 2.0 1.0 5.0 6.0 2.0 2.0 5.0
2.0 2.0 6.0 2.0 …
Run Code Online (Sandbox Code Playgroud)

php regex preg-split

9
推荐指数
3
解决办法
2万
查看次数

将文本拆分为句子

如何将文本拆分成一系列句子?

示例文字:

给我一个海狸.给我一个海狸!给我一个海狸?炸我海狸没有.4?炸了我很多海狸......结束

应输出:

0 => Fry me a Beaver.
1 => Fry me a Beaver!
2 => Fry me a Beaver?
3 => Fry me Beaver no. 4?!
4 => Fry me many Beavers...
5 => End
Run Code Online (Sandbox Code Playgroud)

我尝试了一些我通过搜索在SO上找到的解决方案,但它们都失败了,特别是在第4句.

/(?<=[!?.])./

/\.|\?|!/

/((?<=[a-z0-9)][.?!])|(?<=[a-z0-9][.?!]\"))(\s|\r\n)(?=\"?[A-Z])/

/(?<=[.!?]|[.!?][\'"])\s+/    // <- closest one
Run Code Online (Sandbox Code Playgroud)

php regex string preg-split

9
推荐指数
1
解决办法
8028
查看次数

标签 统计

php ×10

preg-split ×10

regex ×5

explode ×2

string ×2

split ×1