陈一文478 2023-09-17 20:42 采纳率: 100%
浏览 10
已结题

请大家看一下为何统计不出汉字数量呢


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>

<body>
<div id="myDiv">
  床前明月光,疑是地上霜。举头望明月,低头思故乡。
</div>
<p id="wordCount"></p>

<script>
myDiv = document.getElementById('myDiv');
wordCount = myDiv.textContent.length;
display = '${wordCount}字';
getElementById('wordCount').textContent = display;
</script>
</body>
</html>
  • 写回答

2条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-09-17 22:47
    关注

    【以下回答由 GPT 生成】

    问题的关键在于JavaScript的textContent属性,它返回的是元素的文本内容,并不区分汉字和其他字符。因此,使用textContent.length来统计汉字数量是不准确的。

    解决这个问题的解决方案是使用正则表达式来匹配汉字,并统计匹配到的数量。下面是具体的解决方案:

    <!DOCTYPE html>
    <html>
    
    <head>
      <meta charset="UTF-8">
      <title>无标题文档</title>
    </head>
    
    <body>
      <div id="myDiv">
        床前明月光,疑是地上霜。举头望明月,低头思故乡。
      </div>
      <p id="wordCount"></p>
    
      <script>
        var myDiv = document.getElementById('myDiv');
        var text = myDiv.textContent; // 获取<div>中的文本
    
        // 使用正则表达式匹配汉字,将所有非汉字字符替换为空字符串
        var chineseCharacters = text.replace(/[^\u4e00-\u9fa5]/g, '');
    
        var wordCount = chineseCharacters.length; // 统计汉字数量
        var display = wordCount + '字';
        document.getElementById('wordCount').textContent = display;
      </script>
    </body>
    
    </html>
    

    这段代码首先获取<div>元素中的文本内容,然后使用replace方法结合正则表达式/[^\u4e00-\u9fa5]/g将非汉字字符替换为空字符串。最后,统计替换后的内容的长度,即为汉字数量。

    这样,你就可以通过JavaScript统计汉字数量并将结果显示在页面上了。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 9月25日
  • 已采纳回答 9月17日
  • 创建了问题 9月17日

悬赏问题

  • ¥50 python批量提取发票的信息
  • ¥15 mysql安装,初始化数据库失败
  • ¥15 虚幻五引擎内容如何上传至网盘?
  • ¥15 使用mmpose库时出现了问题
  • ¥15 IRI2016模型matlab运行报错
  • ¥50 bat怎么设置电脑后台自动点击网页指定词运行脚本,输入指定网页链接,指定点击词,指定间隔时间,指定网页出现的词,指定网页出现词出现后后点击锁定,放在后台运行不影响前台鼠标工作
  • ¥20 20CrMnMo的高温变形抗力
  • ¥15 RTX3.6 5565驱动中断报错
  • ¥50 带防重放token(Antireplay-Token)的网站怎么用Python发送请求
  • ¥15 visa版本没问题,串口调试助手调试串口正常使用,但是labview刷新不出来