Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html Bash字符串格式_Html_String_Bash_Formatting - Fatal编程技术网

Html Bash字符串格式

Html Bash字符串格式,html,string,bash,formatting,Html,String,Bash,Formatting,你知道a怎么能接受这样的字符串吗 string=1,2,3,4,5 和使用 number=4 放 围绕相应的编号,因此最终产品为: newstring=1,2,3,<font color='red'><b>4</b></font>,5 newstring=1,2,3,4,5 感谢您的帮助您可以使用sed: result="$(sed "s|\($number\)|<font color='red'><b>\1&l

你知道a怎么能接受这样的字符串吗

string=1,2,3,4,5
和使用

number=4


围绕相应的编号,因此最终产品为:

newstring=1,2,3,<font color='red'><b>4</b></font>,5
newstring=1,2,3,4,5

感谢您的帮助

您可以使用
sed

result="$(sed "s|\($number\)|<font color='red'><b>\1</b></font>|" <<< "$string")"
result=“$(sed“s |\($number\)|\1 |)”
echo“$string”| sed“s#\(,\\\^\)\($number\)\(,\\\\\\\\)\\\\1\\2\\3\\g”
在大多数情况下应该足够好。

纯bash

string="1,2,3,4,5"
num=4

re="(^|.+,)($num)(,.+|$)"
if [[ "$string" =~ $re ]]
then
    echo -n "${BASH_REMATCH[1]}"
    echo -n "<font>${BASH_REMATCH[2]}</font>"
    echo    "${BASH_REMATCH[3]}"
else
    echo "$num doesn't match"
fi
string=“1,2,3,4,5”
num=4
re=“(^ |.+,)($num)(,.+|$)”
如果[[“$string”=~$re]]
然后
echo-n“${BASH_重赛[1]}”
echo-n“${BASH_重赛[2]}”
回音“${BASH_重赛[3]}”
其他的
回显“$num不匹配”
fi
将产生:

1,2,3,<font>4</font>,5
1,2,3,4,5
或perl:

echo '1,2,3,4,5' | num=4 perl -F, -lapE '$_=join ",",map{/\b$ENV{num}\b/? "<font>$_</font>":$_}@F'
echo'1,2,3,4,5'|num=4 perl-F,-lapE'$\=join“,”,map{/\b$ENV{num}\b/?“$\:$\}@F'

如果
字符串=11,12,1,4
数字=1
则会出现问题
数字=4
是指
字符串中的精确匹配还是指字符串的第四个字段?如果
字符串=a、b、c、d、e
数字=4
1,2,3,<font>4</font>,5
echo '1,2,3,4,5' | num=4 perl -F, -lapE '$_=join ",",map{/\b$ENV{num}\b/? "<font>$_</font>":$_}@F'