批量提取某个字符前面/后面的内容
Html 实例
批量提取某个字符前面/后面的内容

批量提取某个字符后面的内容

批量提取某个字符前面/后面的内容

简介:

依次提取每行指定字符前或后,第某个字符前后的内容。

通过该脚本可以批量提取

例如: 提取身份证年月日等、提取网址链接等。



<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>提取功能</title>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/xlsx/0.17.0/xlsx.full.min.js"></script>
</head>
<body>
    <h1>提取指定字符的内容</h1>
    <textarea id="inputText" rows="10" cols="50"></textarea><br>
    <input type="text" id="charInput" placeholder="输入要查找的字符"><br>
    <input type="number" id="occurrenceInput" placeholder="出现次数" min="1" value="3"><br>
    <select id="extractPosition">
        <option value="before">提取字符之前的内容</option>
        <option value="after">提取字符之后的内容</option>
    </select><br>
    <button onclick="applyFunction()">提取</button>
    <button onclick="downloadFile()">下载</button>
    <button onclick="clearInput()">清空</button>
    <button onclick="addExampleText()">添加示例文本</button>
    <div id="outputText"></div>

    <script>
        function extractContent(text, find, n, position) {
            var occurrences = 0;
            for (var i = 0; i < text.length; i++) {
                if (text[i] === find) {
                    occurrences++;
                    if (occurrences === n) { // 当找到第 n 个出现位置时
                        if (position === "before") {
                            return text.slice(0, i).trim(); // 提取字符前面的内容并去除空白
                        } else if (position === "after") {
                            return text.slice(i + 1).trim(); // 提取字符后面的内容并去除空白
                        }
                    }
                }
            }
            return text.trim(); // 如果没有找到 n 个字符,则返回原文本并去除空白
        }

        function applyFunction() {
            var inputElement = document.getElementById("inputText");
            var outputElement = document.getElementById("outputText");
            var charInput = document.getElementById("charInput").value;
            var occurrenceInput = parseInt(document.getElementById("occurrenceInput").value) || 3; // 获取用户输入的出现次数
            var extractPosition = document.getElementById("extractPosition").value; // 获取用户选择的提取位置
            var inputText = inputElement.value;
            var lines = inputText.split("\n");
            var result = "";
            for (var i = 0; i < lines.length; i++) {
                var line = lines[i];
                var processedLine = extractContent(line, charInput, occurrenceInput, extractPosition); // 使用新的提取函数
                result += processedLine + "<br>";
            }
            outputElement.innerHTML = result;
        }

        function downloadFile() {
            var inputElement = document.getElementById("inputText");
            var charInput = document.getElementById("charInput").value;
            var occurrenceInput = parseInt(document.getElementById("occurrenceInput").value) || 3; // 获取用户输入的出现次数
            var extractPosition = document.getElementById("extractPosition").value; // 获取用户选择的提取位置
            var inputText = inputElement.value;
            var lines = inputText.split("\n");
            var data = [];
            for (var i = 0; i < lines.length; i++) {
                var line = lines[i];
                var processedLine = extractContent(line, charInput, occurrenceInput, extractPosition); // 使用新的提取函数
                data.push([processedLine]);
            }
            var ws = XLSX.utils.aoa_to_sheet(data);
            var wb = XLSX.utils.book_new();
            XLSX.utils.book_append_sheet(wb, ws, "Sheet1");
            var wbout = XLSX.write(wb, { bookType: 'xlsx', type: 'binary' });
            function s2ab(s) {
                var buf = new ArrayBuffer(s.length);
                var view = new Uint8Array(buf);
                for (var i = 0; i < s.length; i++) view[i] = s.charCodeAt(i) & 0xFF;
                return buf;
            }
            var blob = new Blob([s2ab(wbout)], { type: 'application/octet-stream' });
            var url = URL.createObjectURL(blob);
            var a = document.createElement('a');
            a.href = url;
            a.download = "extracted_content.xlsx";
            a.click();
            setTimeout(function () { URL.revokeObjectURL(url); }, 1000);
        }

        function clearInput() {
            document.getElementById("inputText").value = "";
            document.getElementById("charInput").value = "";
            document.getElementById("occurrenceInput").value = "3"; // 重置出现次数为3
            document.getElementById("extractPosition").value = "before"; // 重置提取位置为"before"
        }

        function addExampleText() {
            var textarea = document.getElementById("inputText");
            textarea.value += "https://speechify.com/zh-hans/\r\nhttps://example.com/test/\r\nhttps://anotherexample.com/path/"; // 添加示例链接
        }
    </script>
</body>
</html>










重要的事情说三遍!!!
这是网站预览,如果预览不正常,有可能需要外网才能访问,或网站已经不存在,或对方服务器拒绝预览访问。
这是网站预览,如果预览不正常,有可能需要外网才能访问,或网站已经不存在,或对方服务器拒绝预览访问。
这是网站预览,如果预览不正常,有可能需要外网才能访问,或网站已经不存在,或对方服务器拒绝预览访问。

(网址均来源于网络,如有侵权,请联系删除)












1. 链接直达将跳转网址: https://www.qaqlinks.com/sites/536.html

2. 网址收录时间:2024-11-01 14:40:33

3. 这是第“536”个收录网址。

如对此链接有任何疑问,可以添加以上微信,或此链接底部留言。看到会马上回复。

QaQlinks 跨境电商导航网站 声明:网站上的服务均为第三方提供,与 QAQlinks 网站无关。请用户注意甄别第三方服务质量,避免上当受骗。

(文章来源于网络,如有侵权,请联系删除)




相关导航

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注