Js实现input框输入时将之前的值替换为*,停止输入一秒后将最后的字符替换为*...

本文介绍了一个前端实现,当在input框中输入时,内容自动被星号替换,且在停止输入一秒钟后,最后一个字符也会被替换。通过提供的链接可以查看演示效果,并提供了源代码。
摘要由CSDN通过智能技术生成

展示效果地址:https://1963331542.github.io/inputPassword/

源代码:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8" />
    <title>input密码框显示为星号“*”</title>
  </head>
  <body>
    <input type="text" />
    当前输入值为:<span></span>
  </body>
</html>
<script>
  var str = ""; //str变量用于存储密码
  //获取input元素
  var input &
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java 代码如下: ``` public static String replaceMiddle(String input) { int length = input.length(); if (length <= 2) { return input; } else if (length % 2 == 0) { int midIndex = length / 2 - 1; return input.substring(0, midIndex) + "**" + input.substring(midIndex + 2); } else { int midIndex = length / 2; return input.substring(0, midIndex - 1) + "*" + input.substring(midIndex + 1); } } ``` 示例: ``` String input = "abcdef"; System.out.println(replaceMiddle(input)); ``` 输出: ``` ab**ef ``` ### 回答2: 可以利用Java中的字符串操作来实现将给定字符串中间四位字符替换为*的功能。具体实现如下: ```java public class Main { public static void main(String[] args) { String str = "abcdefghi"; String replacedStr = replaceMiddleChars(str); System.out.println(replacedStr); } public static String replaceMiddleChars(String str) { int length = str.length(); if (length < 8) { return str; // 字符串长度小于8不做任何替换,直接返回原字符串 } int startIndex = (length - 4) / 2; // 中间四位字符的起始索引 int endIndex = startIndex + 4; // 中间四位字符的结束索引 String beforeMiddle = str.substring(0, startIndex); String afterMiddle = str.substring(endIndex); // 使用StringBuilder来拼接字符串 StringBuilder replacedStr = new StringBuilder(beforeMiddle); for (int i = 0; i < 4; i++) { replacedStr.append('*'); } replacedStr.append(afterMiddle); return replacedStr.toString(); } } ``` 以上代码中,通过`replaceMiddleChars`方法实现了将给定字符串中间四位字符替换为*的功能。如果字符串长度小于8,则直接返回原字符串;否则,通过字符串的`substring`方法将字符串分为中间四位字符的前后两部分,然后通过StringBuilder拼接字符串,将中间四位字符替换为*,最后返回替换后的字符串。 以上代码的输出结果是: ``` abc***ghi ``` 根据给定的字符串"abcdefghi",将中间四位字符"defg"替换为*,得到的结果为"abc***ghi"。 ### 回答3: 要实现将给定字符串中间四位字符替换为*,可以使用Java中的字符串操作方法。 1. 首先,我们需要获取给定字符串的长度。可以使用String类的length()方法获取字符串的长度。 2. 判断字符串的长度是否大于等于8,确保字符串长度足够长。如果长度不够长,则无法将中间四位字符替换为*。 3. 对于符合长度要求的字符串,我们可以使用String类的substring()方法获取字符串的前两位和后两位。将这部分字符串保存到新的变量中。 4. 使用String类的replace()方法,将给定字符串中间四位字符替换为*。 5. 最后,将步骤3中保存的字符串前两位、替换后的字符串和后两位拼接起来,形成最终的替换后的字符串。 下面是一个示例代码: ```java public class ReplaceMiddleFourChars { public static void main(String[] args) { String originStr = "abcdefghijk"; // 获取字符串长度 int length = originStr.length(); // 判断长度是否大于等于8 if (length >= 8) { // 截取前两位和后两位字符 String prefix = originStr.substring(0, 2); String suffix = originStr.substring(length - 2); // 替换中间四位字符为* String replacedStr = originStr.substring(0, length/2 - 2) + "****" + originStr.substring(length/2 + 2); // 拼接替换后的字符串 String resultStr = prefix + replacedStr + suffix; System.out.println(resultStr); } else { System.out.println("字符串长度不足,无法替换中间四位字符。"); } } } ``` 以上代码输出的结果为:ab****jk。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值