在找到的号码前添加文本,进行字符串操作

时间:2019-04-16 17:27:51

标签: php

我正在使用php解析包含大量数据的大文件。我被困在一种情况下:

如果我的字符串中的大括号中有一个数字,我需要先添加一些文本。

示例

{4316} Test

应该是:

{=ATTRVAL("4316")} Test

或在字符串中间:

Some random text {2323} and {3232} I got here.

应该是:

Some random text {=ATTRVAL("2323")} and {=ATTRVAL("3232")} I got here.

到目前为止,我已经尝试了很多字符串函数,但是目前还没有运气。

public static function parseStringWithAttributeValue($attributeValue)
{
    preg_match_all('!\d+!', $attributeValue, $matches);

    $string = '';

    foreach ($matches as $match)
    {
       // string .= $match
    }

    return $string;
}

我首先尝试仅提取数字,然后创建新文本,但这是错误的逻辑。如果可能的话,理想的情况是使用preg_replace,但是到目前为止我还没有运气。 我也尝试过str_replace,但是我想我的知识才走这么远。 如果有人知道采取什么方法,我很乐意得到任何建议。

1 个答案:

答案 0 :(得分:1)

尝试一下:

read_xlsx