【发布时间】:2011-02-03 13:21:03
【问题描述】:
我想修改 HTML 之类的
I am <b>Sadi, novice</b> programmer.
到
I am <b>Sadi, learner</b> programmer.
为此,我将使用字符串“新手程序员”进行搜索。请问我该怎么做?有什么想法吗?
它使用多个单词“新手程序员”进行搜索。这可能是一个完整的句子。额外的空格(例如新行、制表符)应该被忽略,并且在搜索过程中必须忽略任何标签。但在更换期间必须保留标签。
它是一种转换器。如果它不区分大小写会更好。
谢谢
萨迪
更多说明:
我得到了一些不错的答复,并提供了可能的解决方案。但是,如果您有任何想法,请继续发布。
我想进一步澄清这个问题,以防有人错过。主帖将问题作为示例场景展示。
1) 现在的问题是在不考虑标签的情况下查找和替换一些字符串。标签可能会出现在一个单词中。字符串可能包含多个单词。 标签只出现在内容字符串或文档中。 搜索词组从不包含任何标签。
我们可以很方便的去掉所有的标签,做一些文字操作。但是这里出现了另一个问题。
2) 标记必须保留,即使在替换文本之后也是如此。这就是示例所显示的内容。
再次感谢您的帮助
【问题讨论】:
-
+1 对此技术感兴趣....
-
这可能比看起来更复杂。如果我想用“学习编程”来代替“新手程序员”怎么办?代码应该如何确定将哪些单词放在元素内以及放在元素之后?
-
就像 matti 说的,基本上你在你的例子中所做的就是用“学习者”替换“新手”,这可以通过一个简单的 str_replace 来实现。如果我们正在讨论用包含更多单词的字符串替换“新手程序员”,那么您可能会遇到问题,您可能无法通过代码解决。
-
你总是可以用代码解决它,你只需要知道你的规则是什么。正则表达式很棒,可以做很多很棒的事情。
-
@Matti Virkkunen:你是对的。你明白了:)。这是主要问题:(它不能总是通过简单地替换单词来完成。
标签: php javascript html string replace