【发布时间】:2013-07-11 22:15:22
【问题描述】:
我输入了这种格式:
文字编号1:12.3456°,文字编号2:78.9012°。
我想用 PHP 替换这里:
GPS:12.3456,78.9012: 文字编号1:12.3456°,文字编号2:78.9012°。
所以,再次输入大文本:
"
Bla bla bla,随机文本,bla bla... 文字编号1:12.3456°,文字编号2:78.9012°。 还有更多文字...
"
需要这个输出:
"
Bla bla bla,随机文本,bla bla... 全球定位系统:12.3456,78.9012: 文字编号1:12.3456°,文字编号2:78.9012°。 还有更多文字...
"
输出需要在我搜索之前附加这个:
"GPS:12.3456,78.9012:"
所有行中的 2 个数字也不同:12.3456 和 78.9012 其他都是固定的。 (空格,其他字符。)
如果您现在如何从大文本中检测并获取此行:
“Text number1: 12.3456°, text number2: 78.9012°.”
也有帮助。
如果我有这条线,我可以找到数字并替换。
我将使用explode 来检测数字(在数字前后查找空格)并使用str_replace 将输入替换为输出。我不知道这是最好的方法,但我知道它的功能。
(抱歉,文本格式无法正常工作。我修复了输入、输出,将“,”更改为空格)
谢谢!
【问题讨论】:
-
ok 使用 preg_match 提取数字。但是那里可以有其他数字吗?我们可以假设我们提取的数字总是###.#### 格式吗?
-
数字格式:1-2个数字。 1-4 个数字。 1.1、22.1、1.22、1.333、1.4444 或 22.4444 都可以。我需要输入数字,然后需要生成附加文本(“GPS:number1,number2:”),然后用添加的输出替换输入(在输入文本行之前添加 GPS)。
-
Web.Guard 和 Pé de Leão 代码完美运行,两者都很棒!谢谢。
标签: php regex preg-replace preg-match text-processing