将字符串的一部分移动到字符串的另一部分

时间:2012-11-09 06:31:18

标签: php

我有一个非常简单的文本框给用户。

<textarea name="text">ENTER YOUR TEXT, DUDE!</textarea>

有时,用户可以输入以下内容:

blablablatext blablabla $ 10 blablabla blablablatext

哪个好,但我想做的是取美元符号并自动将其放在数字后面(反之亦然):

blablablatext blablabla 10 $ blablabla blablablatext

基本上,我想做的是:

  1. 检测是否有货币符号
  2. 检测数字是否出现在符号
  3. 之后
  4. 例如,检测数字
  5. 后面是否出现字母(或任何内容)
  6. 取货币符号并将其放在数字和字母之间(如果之后没有任何内容,则将其放在数字后面)
  7. 最好的方法是什么?有可能吗?

1 个答案:

答案 0 :(得分:2)

您可以将所有这些加到正则表达式中:

echo preg_replace('/\$\s*(\d+)(?=\s*[^$])/', '$1\$', $text);

这只是一个快速的袖手旁观示例,匹配一个$后跟一些空格后跟一个数字后跟一些空格而不是另一个$ ,并用 [数字] $ 。

我建议你learn some regular expressions