簡體   English   中英

檢測字符串中的“模式”,並將其<sup>標簽</sup>包裝<sup>在javascript(角度)中</sup>

[英]Detect “pattern” in a string and wrap it <sup> tags in javascript(angular)

所以基本上我想要實現的是以下內容:

頁面上的所有文本均由JSON文件提供。 我有一項服務,可以毫無問題地將其解析並打印到文檔中。 現在的問題是,當將此文本寫入json時,我對此的控制有限,我需要檢測方括號中的任何內容(例如“ This This 2011”),並將其包裝在標簽中。

如果有人可以在js中為我提供幫助,並且可能對在angularjs世界中實現該方法的最佳方式提出建議,我將不勝感激。(在控制器本身還是服務中?在視圖本身中?)

非常感謝T

構建一個過濾器,該過濾器使用方括號標簽->具有常規標簽的HTML字符串實現轉換JS字符串的邏輯。

編寫過濾器很容易。 其中的邏輯可能會更復雜,具體取決於您的需求。 編寫了過濾器(將其命名為bracketXformer )后,其用法將是:

型號示例:

$scope.pageContent = {
    title: "The Title",
    content: "Bla bla [bla]"
};

模板示例:

<h2>{{ pageContent.title }}</h2>
<p>{{ pageContent.content | bracketXformer }}</p>

還搜索Java中的Markdown實現(例如Showdown )。 如果它與您的用例相匹配,則可以節省您實施過濾器的時間。 如果Markdown適合您,請在此處查找使用Angular指令的方法。

使用正則表達式

var text = 'some text [sup stuff] here';

document.write(text.replace(/\[(.*)\]/g, '<sup>$1</sup>'));

jsfiddle: http : //jsfiddle.net/uH9x2/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM