Excel——REPLACE函数实现敏感信息打码

第一步:

以素材Excel文档为例。

在F2单元格中输入函数“=REPLACE(B2,4,5,"*****")”,输入完毕后,按Enter键开始计算,并使用填充柄对其他区域进行填充。

这个函数的意思是:从第4位数字开始的5个数字用5个“*”代替。

第二步:

在G2单元格中输入函数“=REPLACE(C2,7,10,"**********")”,输入完毕后,按Enter键开始计算,并向下拖动实现公式填充。

这个函数的意思是:从第7位数字开始的10个数字用10个“*”代替。

请注意:

①函数中的双引号为英文状态下的双引号。

②公式中的“*”可以用其他字符代替,根据需要自行调整。

函数解析:

REPLACE函数是把字符串中的Old_text(旧字符串)替换成New_text(新字符串)。

语法:REPLACE(Old_Text,Start_Num,Num_Chars,New_Text)。

翻译:REPLACE(原字符串,开始位置,字符个数,新字符串)。

Old_Text表示需要替换部分的字符文本。
Start_Num表示要用New_Text替换的Old_Text中字符的起始位置。
Nu

### HTML字符打码与敏感字符替换方案 在Web开发中,为了防止XSS攻击或其他安全风险,通常需要对HTML中的特殊字符进行编码或脱敏处理。以下是几种常见的HTML字符打码方法以及敏感字符替换的解决方案。 #### 1. 使用HTML实体替代特殊字符 当遇到多个连续空格、大于号 `<` 和小于号 `>` 等情况时,可以利用HTML中的实体(转义字符)来代替这些特殊字符[^2]。具体映射如下: | 特殊字符 | 对应的HTML实体 | |----------|----------------| | 空格 | ` ` | | 大于号 | `>` | | 小于号 | `<` | | 版权符号 | `©` | 通过这种方式,可以在页面渲染时不被浏览器解析为实际的标签或操作符。 #### 2. JavaScript动态检测并替换关键词 对于某些特定场景下的字符串替换需求,可以通过JavaScript脚本完成。例如,在DOM元素的内容中查找指定的关键字,并对其进行替换[^1]。代码示例如下: ```javascript function replaceKeyword(domId, keyword, replacement) { const divDom = document.getElementById(domId); if (divDom && divDom.innerText.indexOf(keyword) >= 0) { divDom.innerHTML = divDom.innerHTML.replace(new RegExp(keyword, 'g'), replacement); } } ``` 上述函数会找到ID对应的DOM对象,判断其内部文本是否存在目标关键字,存在的话就用新的内容取代旧的部分。 #### 3. 利用Excel风格的REPLACE函数逻辑 如果是在服务器端或者后台程序里做类似的字符串替换工作,则可参照类似Microsoft Excel提供的`REPLACE`功能定义参数规则[^3]。即给定原串(Old_Text),新串(New_Text),还有要修改的位置起点(Start_Num)及长度范围(Num_Chars)即可执行精确片段替换了。 #### 4. 构建Trie树用于高效匹配和过滤敏感词汇 针对更复杂的业务环境——如需维护一份庞大的敏感词列表并对用户提交的数据实时审查屏蔽违规表述的情况,推荐采用基于前缀树(Trie Tree)结构设计算法模型[^4]。下面给出了一种简单的Java版本实现思路示意: ```java class TrieNode{ private boolean end; Map<Character,TrieNode> map; public TrieNode(){ this.end=false; this.map=new HashMap<>(); } public void setKeyWordEnd(boolean end){ this.end=end; } public boolean isKeyWordEnd(){ return this.end; } public TrieNode getSubNode(Character keyChar){ return this.map.get(keyChar); } public void addSubNode(Character keyChar,TrieNode node){ this.map.put(keyChar,node); } } public class SensitiveFilter{ private final static String REPLACEMENT="*"; private TrieNode rootNode=new TrieNode(); /** * 添加单个敏感词至trie tree. */ private void addWord(String word){ TrieNode tempNode=rootNode; for(int i=0;i<word.length();i++){ char letter=word.charAt(i); TrieNode subNode=tempNode.getSubNode(letter); if(subNode==null){ subNode=new TrieNode(); tempNode.addSubNode(letter,subNode); } tempNode=subNode; if(i==(word.length()-1)){ tempNode.setKeyWordEnd(true); } } } // 更多细节省略... } ``` 此段伪代码展示了如何构建一棵字典树并将各个敏感词语逐一分解存入其中的过程;之后便能快速定位任意输入流里的违禁成分加以掩盖处理了。 #### 5. 用户信息脱敏实例 - 隐藏手机号中间四位数字 最后举一个小例子说明个人信息保护领域内的常见做法之一就是号码类数据遮掩技术[^5]。假设我们想让显示出来的电话形式变成这样:“138****1234”,那么可以用正则表达式轻松达成目的: ```javascript function maskPhone(phoneNumber){ return phoneNumber.replace(/(\d{3})\d{4}(\d{4})/, "$1****$2"); } console.log(maskPhone('13898761234')); // 输出:"138****1234" ``` 以上便是关于HTML字符打码的一些基本概念和技术手段介绍。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

科技颠覆未来

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值