Удалить "."(точка) после каждого слова в шаблоне - PullRequest
0 голосов
/ 02 мая 2019

Я хочу удалить "."(точка) после каждого слова, заключенного в шаблон.

Ввод :

Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.

Ввод :

Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*.

Ответы [ 3 ]

2 голосов
/ 02 мая 2019

Вы можете захватить текст шаблона *|sometext.|*, используя это регулярное выражение с соответствующей группировкой,

(\*\|[^|]+)\.(\|\*)

и заменить на $1$2, где часть *|sometext захвачена в группе 1, а . - этоисключается из группировки, поэтому она удаляется, а |* часть группируется в группу 2.

Regex Demo

Pythonкод демо

$s = "Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.";
echo preg_replace('/(\*\|[^|]+)\.(\|\*)/', '$1$2', $s);

Отпечатки следуют с удаленной точкой внутри *|text.|*,

Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*.
1 голос
/ 02 мая 2019

Это может помочь вам сделать это:

$string = 'Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.';

$output = preg_replace('/(\.\|)/s', '|', $string);

var_dump($output);

Вывод:

"Lorem *|Ipsum|* is simply *|dummy|* text of the *|printing|* and typesetting *|industry|*."
0 голосов
/ 02 мая 2019

Мы можем использовать str_replace () для этого.

$string = 'Lorem *|Ipsum.|* is simply *|dummy.|* text of the *|printing|* and typesetting *|industry.|*.';
$replacedString = str_replace('.|', '|', $string);`

Вы можете узнать больше о функции здесь https://www.w3schools.com/php/showphp.asp?filename=demo_func_string_str_replace

...