gpt4 book ai didi

c# - 如何在 10 美元和 50.58 美元之间划线

转载 作者:行者123 更新时间:2023-11-30 14:15:09 24 4
gpt4 key购买 nike

All Customers Take $10 off $50.58 in ccc.com's Home Decor, Home Appliances and Outdoor Store! Valid through 5/31/2012"

我正在从 db 获取以上类型的字符串,该字符串可能包含也可能不包含 $。如果它包含 $,则 $ 之后的数字应带有下划线。该字符串是完全动态的。它也可能不包含 $

最佳答案

尝试正则表达式:

Regex.Replace(str, @"(?<=\$)\d+(\.\d+)?", "<u>$0</u>");

一些示例输出:

"4.5"     -> "4.5"         (untouched)
"4" -> "4" (untouched)
"$4.5" -> "$<u>4.5</u>"
"$4" -> "$<u>4</u>"

虽然,自 u已弃用,您可能应该考虑 <span>使用一个类,或使用 text-decoration: underline 的内联样式指令:

Regex.Replace(str, @"(?<=\$)\d+(\.\d+)?", 
"<span style=""text-decoration: underline"">$0</span>");

这将取决于您要将此文本放入的封闭元素是什么:如果是,那么也是一个 span ,那么你就不能嵌套它们,所以你必须关闭第一个(只需将 "</span>" 放在替换字符串(第 3 个参数)的开头,将 "<span>" 放在末尾)

关于c# - 如何在 10 美元和 50.58 美元之间划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10534145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com