有什麼辦法可以讓這段代碼更有效嗎?我不是在找人寫我對我的代碼,就點我在正確的方向...PHP中的高效字符串替換
$string = preg_replace('/<ref[^>]*>([\s\S]*?)<\/ref[^>]*>/', '', $string);
$string = preg_replace('/{{(.*?)\}}/s', '', $string);
$string = preg_replace('/File:(.*?)\\n/s', '', $string);
$string = preg_replace('/==(.*?)\=\\n/s', '', $string);
$string = str_replace('|', '/', $string);
$string = str_replace('[[', '', $string);
$string = str_replace(']]', '', $string);
$string = strip_tags($string);
美中不足的,但是,是替換之後順序發生...
樣品輸入文本:
===API sharing and reuse via virtual machine===
{{Expand section|date=December 2013}}
Some languages like those running in a [[virtual machine]] (e.g. [[List of CLI languages|.NET CLI compliant languages]] in the [[Common Language Runtime]] (CLR), and [[List of JVM languages|JVM compliant languages]] in the [[Java Virtual Machine]]) can share an API. In this case, a virtual machine enables [[language interoperability]], by abstracting a programming language using an intermediate [[bytecode]] and its [[language binding]]s.==Web APIs==
{{Main|Web API}}
When used in the context of [[web development]], an API is typically defined as a set of [[Hypertext Transfer Protocol]] (HTTP) request messages, along with a definition of the structure of response messages, which is usually in an Extensible Markup Language ([[XML]]) or JavaScript Object Notation ([[JSON]]) format. While "web API" historically has been virtually synonymous for [[web service]], the recent trend (so-called [[Web 2.0]]) has been moving away from Simple Object Access Protocol ([[SOAP]]) based web services and [[service-oriented architecture]] (SOA) towards more direct [[representational state transfer]] (REST) style [[web resource]]s and [[resource-oriented architecture]] (ROA).<ref>
{{cite web
|first = Djamal
|last = Benslimane
|coauthors = Schahram Dustdar, and Amit Sheth
|title = Services Mashups: The New Generation of Web Applications
|url = http://dsonline.computer.org/portal/site/dsonline/menuitem.9ed3d9924aeb0dcd82ccc6716bbe36ec/index.jsp?&pName=dso_level1&path=dsonline/2008/09&file=w5gei.xml&xsl=article.xsl
|work = IEEE Internet Computing, vol. 12, no. 5
|publisher = Institute of Electrical and Electronics Engineers
|pages = 13â€「15
|year = 2008
}}
</ref> Part of this trend is related to the [[Semantic Web]] movement toward [[Resource Description Framework]] (RDF), a concept to promote web-based [[ontology engineering]] technologies. Web APIs allow the combination of multiple APIs into new applications known as [[mashup (web application hybrid)|mashup]]s.<ref>
{{citation
|first = James
|last = Niccolai
|title = So What Is an Enterprise Mashup, Anyway?
|url = http://www.pcworld.com/businesscenter/article/145039/so_what_is_an_enterprise_mashup_anyway.html
|work = [[PC World (magazine)|PC World]]
|date = 2008-04-23
}}</ref>
樣本輸出(與當前的腳本):
Some languages like those running in a virtual machine (e.g. List of CLI languages/.NET CLI compliant languages in the Common Language Runtime (CLR), and List of JVM languages/JVM compliant languages in the Java Virtual Machine) can share an API. In this case, a virtual machine enables language interoperability, by abstracting a programming language using an intermediate bytecode and its language bindings.
When used in the context of web development, an API is typically defined as a set of Hypertext Transfer Protocol (HTTP) request messages, along with a definition of the structure of response messages, which is usually in an Extensible Markup Language (XML) or JavaScript Object Notation (JSON) format. While "web API" historically has been virtually synonymous for web service, the recent trend (so-called Web 2.0) has been moving away from Simple Object Access Protocol (SOAP) based web services and service-oriented architecture (SOA) towards more direct representational state transfer (REST) style web resources and resource-oriented architecture (ROA). Part of this trend is related to the Semantic Web movement toward Resource Description Framework (RDF), a concept to promote web-based ontology engineering technologies. Web APIs allow the combination of multiple APIs into new applications known as mashup (web application hybrid)/mashups.
也許一個輸入數據樣本和一個輸出樣本會有幫助,所以我們可能會提出一個完整的不同方法......?! – deceze
當然可以!現在編輯帖子... –
您可以將所有這些模式寫入數組,並使用一個preg_replace調用來簡化代碼。與str_replace一樣。除此之外,你有什麼特別的問題讓它更「高效」。是什麼讓你認爲這不是最「高效」的解決方案?你做過任何基準測試嗎? –