Мой код RegEx удаляет пробелы с левой и правой стороны знаков препинания внутри строки.после удаления этих пробелов все в порядке, но некоторые слова объединились.
Я пытался изменить свой код RegEx, но результат был именно тем, что я хотел, даже я пытался проверить свой RegEx на веб-сайтах онлайн-тестированиякак 100 regex101.com и другие.результат в порядке, и слова не будут объединяться, но в моем коде результат другой.Я даже пробовал разные коды RegEx с разными стилями для этого, но все же в моем коде некоторые слова объединяются.Кстати, язык строк Farsi
.но метод отлично работает для обоих.
$text = "سلام ، این یک متن ( است) متشکرم.";
$removePattern = "/(\s+)*([\.\!\:\)\]\}\(\[\{\?\,\;\؟\،\؛])(\s+)*/";
$replace = "$2";
$text = preg_replace($removePattern, $replace, $text);
Я ожидаю, что результат будет
سلام،این یک متن(است)متشکرم.
Но результат будет примерно таким
سلاماین یک متنامتحانیاست (شایداینطوری) بهتر، باشه
Видите ли вы, как سلاماین
и متنامتحانیاست
соединяются и склеиваются?моя проблема в том, как я могу решить эту проблему и как решить эту проблему?это должно работать для разных строк с разным содержанием для фарси.