我有一个将 px 转换为 em 的脚本:
perl -p -i -e 's/(\d+)px/($1\/16).em/ge' stylesheet.css
但是,当我调整它以将 em 转换为 px 时,它就不能正常工作:
perl -p -i -e 's/(\d+)em/($1*16).px/ge' stylesheet.css
它转换2.25em
为2.400px
. 请帮助我。
我有一个将 px 转换为 em 的脚本:
perl -p -i -e 's/(\d+)px/($1\/16).em/ge' stylesheet.css
但是,当我调整它以将 em 转换为 px 时,它就不能正常工作:
perl -p -i -e 's/(\d+)em/($1*16).px/ge' stylesheet.css
它转换2.25em
为2.400px
. 请帮助我。
您不匹配小数部分:
\.
)\d+
)$ echo '2.25em 2em' | perl -pe 's/(\d+(?:\.\d+)?)em/($1*16).px/ge'
36px 32px
您可以使用字符组代替 [ ]
perl -p -i -e 's/(\d[\d\.]*)px/($1\/16).em/ge'
perl -p -i -e 's/(\d[\d\.]*)em/($1*16).px/ge'