我需要用户提交关于在哪里爆炸字符串的规则。
假设我们有一个字符串:
$str = "Age: 20 Town: London Country: UK";
假设用户想要字符串的“UK”部分,所以他输入
$input = "Country:";
在这种情况下 :
$output = end(explode($input, $str));
$output would contain: "UK"
如果他想要“伦敦”,我会怎么做?
$str = "Age: 20 Town: London Country: UK";
$part = end(explode('Town:', $str));
$parts = explode('Country: UK', $part);
$parts[0]; -> London
但是,根据explode的用户输入参数执行此操作的最佳方法是什么,我基本上想提供从字符串中剪切某些内容的选项,这必须基于可以重复的规则,以进一步包含包含相同的基本子字符串,例如 Country、Age 等。
编辑1:
我认为我不够清楚,我的错。
基本上,用户输入应针对所需值的范围:
$str = "年龄:20 城镇:伦敦国家:英国"; $userinput = "Town: {some wildcard like #!#} Country:"
我可以使用什么函数/函数组合来获取通配符并返回该位置的子字符串?
编辑2:我进行了实验并找到了解决方案
想要的输出 = 哥本哈根
$string = "Age: 20 Town: Copenhagen Location: Denmark";
$input = "Town: #!# Location:";
$rules = explode('#!#', $input);
$part = explode($rules[0], $string);
$part = explode($rules[1], $part[1]);
echo $part[0]; ->Copenhagen