国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

實(shí)現(xiàn)同時(shí)查找多個(gè)關(guān)鍵詞——KeywordCrafter - 關(guān)鍵詞匠心

這篇具有很好參考價(jià)值的文章主要介紹了實(shí)現(xiàn)同時(shí)查找多個(gè)關(guān)鍵詞——KeywordCrafter - 關(guān)鍵詞匠心。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

具體功能:同時(shí)查找多個(gè)關(guān)鍵詞,高亮加粗顯示,并關(guān)鍵詞顯示出現(xiàn)次數(shù)。

??碎碎念:最近在寫(xiě)文案的時(shí)候,總是要避免出現(xiàn)一個(gè)敏感詞匯,利用 (command+F) or (Ctr+F) 查找,只能一個(gè)一個(gè)單詞去查,很麻煩。???♂?

所以我寫(xiě)了一個(gè)簡(jiǎn)單的網(wǎng)頁(yè),在文本框輸入一整篇文章,在搜索框輸入我想要查找的關(guān)鍵詞,多個(gè)關(guān)鍵詞用逗號(hào) (,)?分隔開(kāi),并且統(tǒng)計(jì)該關(guān)鍵詞出現(xiàn)次數(shù)。下面是效果圖:

實(shí)現(xiàn)同時(shí)查找多個(gè)關(guān)鍵詞——KeywordCrafter - 關(guān)鍵詞匠心,前端,html,css

?接下來(lái)我們具體實(shí)現(xiàn)一下。

(emm……本人對(duì)前端不是很了解,下面代碼僅限實(shí)現(xiàn)我自己的需求?????)

一、功能實(shí)現(xiàn)

1. html 網(wǎng)頁(yè)具體代碼:

<html>

<head>
    <title>KeywordCrafter - 關(guān)鍵詞匠心</title>
<body>
    <div class="mm">
        <h1 style="text-align: center;">KeywordCrafter - 關(guān)鍵詞匠心</h1>
        <textarea id="article" placeholder="請(qǐng)輸入文本內(nèi)容"></textarea><br>
        <input type="text" id="words" style="width: 30%;height: 23px; font-size: 14px;" placeholder="輸入要搜索的單詞(以逗號(hào)分隔)">
        <button onclick="searchWords()"><span class="search-icon"></span></button>
        <div id="wordCounts"></div>
        <div id="result"></div>

    </div>
</body>

</html>

2. JavaScript部分:

<script>
        function searchWords() {
            const articleContent = document.getElementById("article").value.toLowerCase();
            const wordsToSearch = document.getElementById("words").value.toLowerCase().split(',');

            let foundWords = {};

            for (const word of wordsToSearch) {
                const count = (articleContent.match(new RegExp(word.trim(), 'gi')) || []).length;
                if (count > 0) {
                    foundWords[word.trim()] = count;
                }
            }

            displayResult(foundWords);
        }

        // 顯示篩選后的文本
        function displayResult(foundWords) {
            const articleContent = document.getElementById("article").value;
            const resultDiv = document.getElementById("result");
            const wordCountsDiv = document.getElementById("wordCounts");
            let highlightedContent = articleContent;
            if (Object.keys(foundWords).length > 0) {
                highlightedContent = highlightWords(articleContent, Object.keys(foundWords));
                let wordCountsText = "關(guān)鍵詞 & 出現(xiàn)次數(shù): ";
                for (const word in foundWords) {
                    wordCountsText += `${word} (${foundWords[word]} 次),`;
                }
                wordCountsDiv.innerText = wordCountsText;
            } else {
                wordCountsDiv.innerText = "沒(méi)有發(fā)現(xiàn)關(guān)鍵詞。";
            }
            resultDiv.innerHTML = highlightedContent;
        }

        // 篩選到的文本高亮加粗顯示
        function highlightWords(content, words) {
            for (const word of words) {
                const regex = new RegExp(word, "gi");
                content = content.replace(regex, `<span class="highlight">${word}</span>`);
            }
            return content;
        }
    </script>

3. 網(wǎng)頁(yè)樣式:

<style>
        body {
            background-image: url("./images/bg1.jpeg");
            background-size: cover;
            /* 控制圖片如何適應(yīng)元素 */
            background-repeat: no-repeat;
            /* 防止圖片重復(fù)平鋪 */
        }

        input[type="text"],
        textarea {
            background-color: #f2f2f23e;
            /* 自定義背景顏色 */
            border: 1px solid rgba(204, 204, 204, 0.258);
            /* 邊框樣式 */
            padding: 10px;
            /* 內(nèi)邊距 */
            color: #333;
            /* 文本顏色 */
        }

        button {
            background-color: #007bff23;
            /* 按鈕背景顏色 */
            color: white;
            /* 按鈕文本顏色 */
            padding: 10px 20px;
            /* 內(nèi)邊距 */
            border: none;
            /* 去除邊框 */
            cursor: pointer;
            /* 鼠標(biāo)懸停樣式 */
        }


        .highlight {
            background-color: yellow;
            font-weight: bold;
        }

        .mm {
            margin: 0 20px;
            /* background-image:url("./images/bg1.jpeg") */
            /* background-image:url("./images/bg2.jpeg") */
        }

        textarea {
            font-size: 16px;
            width: 100%;
            height: 42vh;
            align: center;
            text-size-adjust: 14px;
            padding: 5px;
        }

        #wordCounts {
            margin: 5px;
            color: blueviolet;
        }

        button .search-icon {
            display: inline-block;
            width: 20px;
            height: 20px;
            background-image: url('./images/ss.png');
            /* 圖標(biāo)的 URL */
            background-repeat: no-repeat;
            background-size: 100%;
            vertical-align: middle;
            /* 垂直居中 */
            margin-right: 5px;
            /* 圖標(biāo)和文字之間的間距 */
        }
    </style>

大家可以自己添加替換背景圖片。

二、代碼解析

(一)實(shí)現(xiàn)過(guò)程

主要通過(guò)JavaScript實(shí)現(xiàn)了同時(shí)查找多個(gè)關(guān)鍵詞的功能。讓我來(lái)解釋一下具體的實(shí)現(xiàn)過(guò)程:

  1. 頁(yè)面結(jié)構(gòu):

    • 使用<div class="mm">創(chuàng)建一個(gè)具有特定樣式的區(qū)塊,其中包含了頁(yè)面元素。
    • <h1>標(biāo)簽顯示了頁(yè)面的標(biāo)題,且使用了text-align: center;來(lái)將標(biāo)題居中顯示。
    • <textarea>標(biāo)簽創(chuàng)建了一個(gè)文本輸入框,用戶可以在這里輸入要搜索的文章內(nèi)容。
    • <input>標(biāo)簽用于輸入要搜索的關(guān)鍵詞,設(shè)置了樣式以調(diào)整寬度、高度和字體大小。
    • <button>標(biāo)簽添加了一個(gè)按鈕,點(diǎn)擊按鈕會(huì)觸發(fā)searchWords()函數(shù)。
    • 兩個(gè)<div>標(biāo)簽用于顯示搜索結(jié)果和關(guān)鍵詞出現(xiàn)次數(shù)。
  2. JavaScript功能:

    • searchWords()函數(shù)會(huì)在用戶點(diǎn)擊搜索按鈕時(shí)觸發(fā)。它會(huì)獲取文本框中的文章內(nèi)容和要搜索的關(guān)鍵詞。
    • 對(duì)于每個(gè)關(guān)鍵詞,使用正則表達(dá)式在文章內(nèi)容中查找匹配,并統(tǒng)計(jì)關(guān)鍵詞出現(xiàn)的次數(shù)。
    • 所有搜索到的關(guān)鍵詞和出現(xiàn)次數(shù)會(huì)被保存在foundWords對(duì)象中。
  3. 顯示結(jié)果:

    • displayResult()函數(shù)將搜索結(jié)果顯示在頁(yè)面上。如果有搜索到的關(guān)鍵詞,它會(huì)高亮顯示出現(xiàn)在文章內(nèi)容中的關(guān)鍵詞,并在旁邊顯示關(guān)鍵詞出現(xiàn)的次數(shù)。
    • 如果沒(méi)有搜索到關(guān)鍵詞,將顯示一個(gè)相應(yīng)的提示信息。
  4. 高亮顯示:

    • highlightWords()函數(shù)用于將文章內(nèi)容中的關(guān)鍵詞進(jìn)行高亮顯示。它通過(guò)正則表達(dá)式匹配關(guān)鍵詞,并將匹配到的關(guān)鍵詞用<span class="highlight">標(biāo)簽包裹起來(lái),從而實(shí)現(xiàn)高亮效果。

通過(guò)JavaScript實(shí)現(xiàn)了在文本內(nèi)容中同時(shí)查找多個(gè)關(guān)鍵詞,并將匹配到的關(guān)鍵詞高亮顯示以及統(tǒng)計(jì)關(guān)鍵詞出現(xiàn)次數(shù)的功能。同時(shí),HTML和CSS也被用于創(chuàng)建網(wǎng)頁(yè)結(jié)構(gòu)和樣式。

(二)正則表達(dá)式

當(dāng)調(diào)用searchWords()函數(shù)時(shí),這段代碼利用了正則表達(dá)式和循環(huán),逐個(gè)查找關(guān)鍵詞在文章中的出現(xiàn)次數(shù),并將結(jié)果存儲(chǔ)在一個(gè)對(duì)象中,用于后續(xù)的顯示和統(tǒng)計(jì)。

  1. 獲取輸入內(nèi)容:const articleContent = document.getElementById("article").value.toLowerCase();

    • 這行代碼獲取了輸入在id為"article"的文本框中的文章內(nèi)容,并將內(nèi)容轉(zhuǎn)換為小寫(xiě)字母,方便后續(xù)的比較。
  2. 獲取關(guān)鍵詞:const wordsToSearch = document.getElementById("words").value.toLowerCase().split(',');

    • 這行代碼獲取了輸入在id為"words"的文本框中的關(guān)鍵詞,并將關(guān)鍵詞以逗號(hào)為分隔符拆分成一個(gè)數(shù)組。
    • 之后,將每個(gè)關(guān)鍵詞轉(zhuǎn)換為小寫(xiě)字母,以便進(jìn)行不區(qū)分大小寫(xiě)的匹配。
  3. 創(chuàng)建一個(gè)空對(duì)象來(lái)存儲(chǔ)找到的關(guān)鍵詞和出現(xiàn)次數(shù):let foundWords = {};

  4. 遍歷每個(gè)關(guān)鍵詞并執(zhí)行查找:

    for (const word of wordsToSearch) {
        const count = (articleContent.match(new RegExp(word.trim(), 'gi')) || []).length;
        if (count > 0) {
            foundWords[word.trim()] = count;
        }
    }
    
    • 在這個(gè)循環(huán)中,每個(gè)關(guān)鍵詞都經(jīng)過(guò)如下處理:
      • 使用new RegExp(word.trim(), 'gi')創(chuàng)建一個(gè)正則表達(dá)式對(duì)象,word.trim()用于去除關(guān)鍵詞前后的空格。
      • 'gi'表示正則表達(dá)式會(huì)在全局范圍內(nèi)進(jìn)行匹配(g:global)且不區(qū)分大小寫(xiě)(i:case-insensitive)。
      • (articleContent.match(...) || []).length會(huì)匹配所有在articleContent中的關(guān)鍵詞,并返回匹配數(shù)組。
      • .length獲取匹配數(shù)組的長(zhǎng)度,即關(guān)鍵詞在文章中出現(xiàn)的次數(shù)。
  5. 如果關(guān)鍵詞出現(xiàn)次數(shù)大于0,則將關(guān)鍵詞及其出現(xiàn)次數(shù)存儲(chǔ)在foundWords對(duì)象中。

  6. 最后,調(diào)用displayResult(foundWords)函數(shù)來(lái)顯示搜索結(jié)果。

以上就是全部?jī)?nèi)容了,希望能幫到你。主頁(yè)有其他文章,可以看看哦~文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-643281.html

到了這里,關(guān)于實(shí)現(xiàn)同時(shí)查找多個(gè)關(guān)鍵詞——KeywordCrafter - 關(guān)鍵詞匠心的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python實(shí)現(xiàn)自動(dòng)關(guān)鍵詞提取

    Python實(shí)現(xiàn)自動(dòng)關(guān)鍵詞提取

    隨著互聯(lián)網(wǎng)的發(fā)展,越來(lái)越多的人喜歡在網(wǎng)絡(luò)上閱讀小說(shuō)。本文將通過(guò)詳細(xì)示例,向您介紹如何使用Python編寫(xiě)爬蟲(chóng)程序來(lái)獲取網(wǎng)絡(luò)小說(shuō),并利用自然語(yǔ)言處理技術(shù)實(shí)現(xiàn)自動(dòng)文摘和提取功能。 1. 網(wǎng)絡(luò)小說(shuō)數(shù)據(jù)抓取 首先,請(qǐng)確保已安裝必要依賴包(如requests、BeautifulSoup)

    2024年02月10日
    瀏覽(24)
  • Vue實(shí)現(xiàn)搜索關(guān)鍵詞高亮顯示

    Vue實(shí)現(xiàn)搜索關(guān)鍵詞高亮顯示

    最近寫(xiě)移動(dòng)端項(xiàng)目的時(shí)候,遇到搜索高亮的需求,寫(xiě)篇文章紀(jì)錄一下 先看效果: ? 以上為實(shí)現(xiàn)效果展示; 整體思路 : 對(duì)后臺(tái)返回的數(shù)據(jù)進(jìn)行操作,(我這里是模擬數(shù)據(jù)),使用正則去匹配搜索后,使用replace進(jìn)行字符串的替換; 渲染數(shù)據(jù)部分使用v-html進(jìn)行動(dòng)態(tài)展示即可

    2024年02月15日
    瀏覽(22)
  • highlight.js 實(shí)現(xiàn)搜索關(guān)鍵詞高亮效果

    highlight.js 實(shí)現(xiàn)搜索關(guān)鍵詞高亮效果

    先看效果: 更新:增加切換顯示 折騰了老半天,記錄一下 注意事項(xiàng)都寫(xiě)注釋了 代碼: 更新后代碼:

    2024年02月02日
    瀏覽(18)
  • Python實(shí)現(xiàn)百度關(guān)鍵詞提取URL,輕松搞定!

    Python實(shí)現(xiàn)百度關(guān)鍵詞提取URL,輕松搞定!

    隨著互聯(lián)網(wǎng)的發(fā)展,搜索引擎已成為人們獲取信息的主要途徑。百度搜索引擎作為國(guó)內(nèi)最受歡迎的搜索引擎之一,對(duì)于網(wǎng)站SEO優(yōu)化而言,排名靠前的和URL是至關(guān)重要的。本文將介紹如何使用Python實(shí)現(xiàn)百度提取URL,幫助網(wǎng)站優(yōu)化者更好地了解自己的網(wǎng)站在百度搜索

    2024年02月06日
    瀏覽(20)
  • 掌握Python爬蟲(chóng)實(shí)現(xiàn)網(wǎng)站關(guān)鍵詞擴(kuò)展提升曝光率

    掌握Python爬蟲(chóng)實(shí)現(xiàn)網(wǎng)站關(guān)鍵詞擴(kuò)展提升曝光率

    目錄 一、優(yōu)化的重要性 二、優(yōu)化的基本方法 1、選擇與網(wǎng)站內(nèi)容相關(guān)的 2、控制的密度和分布 3、的層次布局 三、Python爬蟲(chóng)實(shí)現(xiàn)網(wǎng)站擴(kuò)展 1、確定目標(biāo)網(wǎng)站 2、分析目標(biāo)網(wǎng)站的HTML結(jié)構(gòu) 3、編寫(xiě)Python爬蟲(chóng)代碼 4、分析爬取到的數(shù)據(jù)

    2024年02月07日
    瀏覽(21)
  • php+mysql實(shí)現(xiàn)微信公眾號(hào)回復(fù)關(guān)鍵詞新聞列表

    php+mysql實(shí)現(xiàn)微信公眾號(hào)回復(fù)關(guān)鍵詞新聞列表

    非常抱歉,我之前理解有誤。如果您想要實(shí)現(xiàn)在公眾號(hào)發(fā)送,返回新聞列表的功能,可以按照以下步驟進(jìn)行操作: 1. 創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)表,用于存儲(chǔ)新聞的標(biāo)題、鏈接和內(nèi)容等信息。例如,可以創(chuàng)建一個(gè)名為news的表,包含id、title、link和content等字段。 2. 在公眾號(hào)后臺(tái)設(shè)

    2023年04月16日
    瀏覽(52)
  • 如何優(yōu)化網(wǎng)站的SEO排名:通過(guò)關(guān)鍵詞、鏈接和內(nèi)容策略實(shí)現(xiàn)

    如何優(yōu)化網(wǎng)站的SEO排名:通過(guò)關(guān)鍵詞、鏈接和內(nèi)容策略實(shí)現(xiàn)

    網(wǎng)站的SEO排名,是指搜索引擎對(duì)網(wǎng)站所做出的排名,影響到網(wǎng)站的流量和曝光量。SEO排名優(yōu)化,需要通過(guò)、鏈接和內(nèi)容等策略來(lái)實(shí)現(xiàn)。下面將詳細(xì)介紹這些策略以及如何通過(guò)代碼實(shí)現(xiàn)。 是指用戶在搜索引擎中輸入的搜索詞匯。要優(yōu)化SEO排名,需要針對(duì)用戶的搜索

    2024年02月09日
    瀏覽(44)
  • 文本分析-使用jieba庫(kù)實(shí)現(xiàn)TF-IDF算法提取關(guān)鍵詞

    文本分析-使用jieba庫(kù)實(shí)現(xiàn)TF-IDF算法提取關(guān)鍵詞

    ???♂? 個(gè)人主頁(yè):@艾派森的個(gè)人主頁(yè) ???作者簡(jiǎn)介:Python學(xué)習(xí)者 ?? 希望大家多多支持,我們一起進(jìn)步!?? 如果文章對(duì)你有幫助的話, 歡迎評(píng)論 ??點(diǎn)贊???? 收藏 ??加關(guān)注+ ????????TF-IDF(Term Frequency-Inverse Document Frequency, 詞頻-逆文件頻率)是一種用于資訊檢索與資

    2024年02月11日
    瀏覽(19)
  • 雙方案-基于Mysql 與 ElasticSearch實(shí)現(xiàn)關(guān)鍵詞提示搜索與全文檢索

    雙方案-基于Mysql 與 ElasticSearch實(shí)現(xiàn)關(guān)鍵詞提示搜索與全文檢索

    就喜歡搞這種不需要怎么費(fèi)勁的東西,只需要把思路闡述清楚,隨筆性質(zhì)的博文,順手啊,幾乎不用改定就可以當(dāng)博文發(fā)布出去。 那么,這里的話我們要做的就是實(shí)現(xiàn)這個(gè)的一個(gè)搜索功能,這個(gè)前端我就不說(shuō)了,實(shí)現(xiàn)起來(lái)起來(lái)其實(shí)還是容易的,就是費(fèi)勁。我們主要關(guān)注

    2024年01月18日
    瀏覽(24)
  • 基于Word2vec詞聚類的關(guān)鍵詞實(shí)現(xiàn)

    基于Word2vec詞聚類的關(guān)鍵詞實(shí)現(xiàn)

    基于Word2Vec的詞聚類提取包括以下步驟: 整個(gè)流程的核心在于使用Word2Vec模型得到詞向量,然后通過(guò)聚類算法將相似的詞語(yǔ)歸為一簇,最終提取每個(gè)簇的代表性詞語(yǔ)作為。這種方法能夠捕捉詞語(yǔ)之間的語(yǔ)義關(guān)系,提高的表達(dá)力。 詞向量的預(yù)處理 基于word2

    2024年01月18日
    瀏覽(16)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包