正则只替换URL字符串里面的汉字部分

JavaScript字符串全量替换:replace、replaceAll与正则g标志深度解析 字符串全量替换是前端开发中基础却易错的核心操作,其本质涉及JavaScript字符串处理机制、正则表达式状态管理及Unicode文本兼容性。理解String.prototype.replace的单次匹配设计原理,是规避‘只替第一个’陷阱的前提;而global(g)标志位不仅控制匹配范围,更引入lastIndex状态机与代理对(surrogate pairs)等底层复杂性。结合replaceAll()的现代浏览器支持现状与split().join()的性能优势,开发者需依据数据特征(如是否含emoji、用户输 阅读详情
原文地址: http://www.java2000.net/p9806

URL为 http://192.168.1.1:8080/resources/电话.xls
如果使用 URLEncoder.encode 将会把冒号等一块给替换了
http%3A%2F%2F192.168.1.1%3A8080%2Fresources%2F%E7%94%B5%E8%AF%9D.xls

这并不是我们需要的,我们只希望替换编码里面中文的部分,这里给出了解决方法,很简单

  1. package log;

  2. import java.io.UnsupportedEncodingException;
  3. import java.net.URLEncoder;
  4. import java.util.regex.Matcher;
  5. import java.util.regex.Pattern;

  6. /**
  7.  * 正则替换字符串里面的汉字部分。
  8.  * 
  9.  * @author 赵学庆 www.java2000.net
  10.  */
  11. public class URLEncoderHZ {
  12.   public static void main(String[] args) throws Exception {
  13.     String str = "http://192.168.1.1:8080/resources/电话.xls";
  14.     System.out.println(encode(str, "UTF-8"));
  15.   }

  16.   private static String zhPattern = "[/u4e00-/u9fa5]+";

  17.   /**
  18.    * 替换字符串卷
  19.    * 
  20.    * @param str 被替换的字符串
  21.    * @param charset 字符集
  22.    * @return 替换好的
  23.    * @throws UnsupportedEncodingException 不支持的字符集
  24.    */
  25.   public static String encode(String str, String charset) throws UnsupportedEncodingException {
  26.     Pattern p = Pattern.compile(zhPattern);
  27.     Matcher m = p.matcher(str);
  28.     StringBuffer b = new StringBuffer();
  29.     while (m.find()) {
  30.       m.appendReplacement(b, URLEncoder.encode(m.group(0), charset));
  31.     }
  32.     m.appendTail(b);
  33.     return b.toString();
  34.   }
  35. }


运行结果

http://192.168.1.1:8080/resources/%E7%94%B5%E8%AF%9D.xls


潜在图神经网络学习笔记(Latent Graph Neural Networks for Human Skeleton-based Action Recognition) 在本文中,我们从一个新的角度来解决这个问题,通过将非结构化的骨架数据映射到潜在空间,如图2所示,这里称为潜在特征空间或嵌入空间,其中一组项嵌入在一个流形中[ 1 ],并且在潜在空间中彼此更相似的项被放置在彼此更接近的位置。潜在空间中的位置可以被认为是由一组潜在变量定义的,这些潜在变量来源于对象的相似性。将骨架数据嵌入到流形中,消除了远近邻居之间的冗余依赖关系,以解决加权问题。得到具有多尺度聚合特征的稀疏图矩阵结构,以更好地理解骨骼关节的直接加权信息。 阅读详情

相关推荐

C# NX二次开发:两种过滤器设置方案的实战解析与场景适配

本文深入解析C# NX二次开发中的两种过滤器设置方案:AddFilterHandler回调与MaskTriple属性设置。通过实战案例对比其性能差异与适用场景,帮助开发者根据需求选择最优方案,提升NX插件开发效率与交互体验。特别针对BlockStyler集成场景提供专业建议,是NX二次开发者的实用指南。

weixin_33739646的博客 844

使用URLDecoder 和 URLEncoder解码及编码中文及特殊字符

URLDecoder和URLEncoder用于完成普通字符串 和 application/x-www-form-urlencoded MIME 字符串之间的相互转换。 用法很简单,直接看代码吧。 package pingmujietu; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; import ...

tanwenfang的博客 1138

STM32F4实战:手把手教你实现USB OTG双模式切换(Host/Slave)

本文详细介绍了如何在STM32F4上实现USB OTG双模式切换(Host/Slave),包括硬件架构解析、软件实现机制、主机模式下的U盘读写以及从机模式下的自定义设备开发。通过实战案例和优化技巧,帮助开发者快速掌握USB双角色功能,提升嵌入式系统开发的灵活性和效率。

u9v0w的博客 730

URL特殊字符处理

在向腾讯批量提交数据时,发现有时有的数据签名失败,后来检查后发现凡是提交失败的那条数据,其签名字符串都含有 “+” 号。并没有做 urlencode 直接放在了 querystring 里面传了过去,致使接收方无法获得正常的参数。 用URL传参数的时候,如果某一个参数中含" #$ ^ & * + = "这些符号的时候,在另一个页面或接收方就会取不到传过来的参数。 有些符号在URL中是不能直接传递的,如果要在URL中传递这些特殊符号,需要对其进行URL编码 + URL中+号表示空...

wangooo的博客 2034

spyglass之功耗分析

用于功耗分析的软件除了ptpx外,spyglass也可以。ptpx的功耗分析是基于netlist(网表)进行的,一般用于分析综合后的pre功耗和P&R后的post功耗,但这已经是项目进行到比较后期了,如果后期发现功耗数据与我们目标功耗相差较大,则意味着需要功耗优化,这时有可能会将项目计划节点延迟。如果在前期designer可以获得设计模块的功耗数据,可提早优化功耗,spyglass则为designer提供了一个很好的手段去评估功耗,从而提前优化功耗。

u011974971的博客 9205

【用unity实现100个游戏之18】从零开始制作一个类CSGO/CS2、CF第一人称FPS射击游戏——基础篇1(附项目源码)

生存和射击游戏一直是我的最爱,说起3D最普遍的应该就是射击系统了,你可以在任何情况下加入射击功能,所以我写下了这篇FPS开发记录。希望对你有帮助。在这个项目中,你将学习如何设计和实现射击系统、武器系统、玩家控制、场景设计等方面的内容。通过这个项目,你将深入了解游戏开发中的许多核心概念和技术,并且在实践中不断提升自己。本项目将带你从零开始逐步实现一个完整的第一人称射击游戏,并且会逐步引入一些高级功能,如特效、声音等。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 5501

URL编码转义,冒号和/不转,否则导致http链接失效

URL含有中文需要转义 参考 https://blog.csdn.net/benbenxiongyuan/article/details/10608095 HTTP请求头中的一些字符有特殊含义,转义的时候不会保留,如下: 加号(+)会转换成空格 正斜杠(/)分隔目录和子目录 问号(?)分隔URL和查询参数 百分号(%)制定特殊字符 #号指定书签 &号分隔参数 如若要在HTTP请求头...

qq_28820221的博客 7442

【Google Play 上架】内部 / 封闭 / 开放 测试全解 — “只跑一个就能上架”?不行!

Google Play新规要求个人开发者账号在2023年11月13日后必须通过封闭测试(Closed testing)才能上架应用。封闭测试需要至少12名测试者连续14天保持参与状态,而内部测试和开放测试不能替代这一要求。三类测试轨道各有特点:内部测试用于快速内部验证,封闭测试是上架必经环节,开放测试面向更广泛用户但非必需。上架流程建议先内部测试修复问题,再启动封闭测试满足14天要求,最后申请生产发布。组织账号和早期个人账号可能不受此限制。开发者应提前规划测试人群,确保持续测试周期,并关注Play Cons

技术小甜甜:传播可落地技术,帮助个人和企业降低解决真实场景问题的成本 2801

怎么使用java 将url编码转汉字

URL编码是将URL中的特殊字符转换为%加上对应的ASCII码的形式。而将URL编码转换回原始字符则是通过对URL进行解码操作。方法将编码后的URL字符串解码为原始字符,并指定字符编码为UTF-8。请确保编码和解码的字符编码一致,以避免出现乱码。类来进行URL解码操作。在Java中,您可以使用。在上面的示例中,我们使用。

wei7a7a7a的博客 1507

华为OD机试真题 新系统2026-04-01 C++ 实现【计算数列位置N的值】

如果其前面的M个元素中,存在值相同的元素,则该位置上的数值等于前面M个数中最大的数值与最小的数值之如果其前面的M个元素中,不存在值相同的元素,则该位置上的数值等于前面M个数中最大的数值与最小的数值之差;1、输入M、N两个数,则按照以下规则形成一个数列;两个整数,用逗号分割,分别表示M和N。一个整数,表示数列第N个位置上的数值。2、数列的前M个元素的值为1到M;请计算该数列第N个位置上的数值。N取值范围:1<= N<=50。M取值范围:3<=M<=10。

MISAYAONE的博客 1157

解锁RK3588多屏异显:MIPI+HDMI+EDP混合输出全攻略

本文详细介绍了RK3588处理器在MIPI+HDMI+EDP混合输出配置中的技术实现与应用。作为一款高性能处理器,RK3588凭借其强大的图形处理能力,支持多屏异显功能,可满足智能安防、工业控制等领域的多屏显示需求。文章从硬件连接、设备树配置、内核驱动设置到显示参数调整,系统阐述了配置流程,并针对信号不稳定、显示模式不匹配等常见问题提供了解决方案。通过智能安防监控案例,展示了该技术在提高监控效率方面的实际应用价值。随着技术进步,RK3588多屏异显技术将在更多领域发挥重要作用,为开发者提供灵活多样的显示方案

远程部署调试 运行安装 项目调试 二次开发 项目技术新 持续迭代 部分源码免费分享 2434

Java中URLEncoder.encode与URLDecoder.decode处理url特殊参数的方法

最近在使用 url 的 queryString 传递参数时,因为参数的值(注意是参数的值被加密),被DES加密了,而加密得到的是 Base64的编码字符串。 类似于: za4T8MHB/6mhmYgXB7IntyyOUL7Cl++0jv5rFxAIFVji8GDrcf+k8g== 显然 这里面含有了 特殊字符: / + = 等等,如果直接通过url 来传递该参数: url = &quot;xxx...

SheTing'Blog 1万+

小波变换(深入浅出)

小波变换

weixin_46713695的博客 3万+

正则只替换URL字符串里面的汉字部分(转载优快云)

URL为 http://192.168.1.1:8080/resources/电话.xls如果使用 URLEncoder.encode 将会把冒号等一块给替换了http%3A%2F%2F192.168.1.1%3A8080%2Fresources%2F%E7%94%B5%E8%AF%9D.xls这并不是我们需要的,我们只希望替换编码里面中文的部分,这里给出了解决方法,很简单 package l...

睡懒觉的程序员 269

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

正则表达式

文章目录正则表达式简介正则表达式匹配规则re模块compile 函数Pattern 对象Match 对象范例常见格式分组位置分组分割批量替换正则案例: 正则表达式简介 为什么要学正则表达式? 实际上爬虫一共就四个主要步骤: 明确目标 (要知道你准备在哪个范围或者网站去搜索) 爬 (将所有的网站的内容全部爬下来) 取 (去掉对我们没用处的数据) 处理数据(按照我们想要的方式存储和使用) 我们do...

妖月的博客 2万+

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

截取url的host_java正则表达式获取url的host示例

java正则表达式获取url的host示例复制代码 代码如下:public static String getHost(String url){if(url==null||url.trim().equals("")){return "";}String host = "";Pattern p = Pattern.compile("(?<=//|)((\\w)+\\.)+\\w+");Mat...

weixin_29586681的博客 1054

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Vscode正则查找替换

Vscode正则查找替换

qq_39702981的博客 2254

js 正则替换括号

<br /> <br /> <br /> <br />  var str = "需要(替换)替换的(把我替换)字符";<br /><br />  var reg = //([/u4E00-/u9FA5/uf900-/ufa2d]+/)/g;<br /><br />  newStr = str.replace(reg,"#");<br /> <br /> <br /> 正则表达式用于字符串处理、表单验证等场合,实用高效。现将一些常用的表达式收集于此,以备不时之需。<br />   匹配中文字符的正则表达式:

strive_bo的专栏 7705

URL正则

URL为 http://192.168.1.1:8080/resources/电话.xls 如果使用 URLEncoder.encode 将会把冒号等一块给替换了 http%3A%2F%2F192.168.1.1%3A8080%2Fresources%2F%E7%94%B5%E8%AF%9D.xls 这并不是我们需要的,我们只希望替换编码里面中文的部分,这里给出了解决方法,很简单 ...

worldsz的专栏 273

Qt 正则表达式(QRegularExpression类)详解

本文介绍了Qt6中QRegularExpression类的使用方法,重点解析了正则表达式的核心语法和实际应用。文章首先概述了正则表达式的基本概念和常用符号(如\d、\w、^$等),然后通过电话号码验证等实例展示了正则表达式的匹配规则。第二部分详细讲解了QRegularExpression类,包括创建对象、匹配操作、捕获组处理以及全局匹配等核心功能,并提供了代码示例。文章还推荐了常用正则表达式模板(如邮箱、手机号验证)和调试工具,帮助开发者快速掌握正则表达式在Qt开发中的实践应用。

本博客分享软硬件一体化开发实战。硬件涵盖 PCB 设计、STM32 等 MCU 底层开发;软件包含 C++、Rust,Qt/QML、PyQt、Slint、TouchGFX、LVGL 各类 GUI 框架。方便软硬件开发者查阅学习。欢迎关注! 2054

【python】用正则表达式进行文字局部替换

比如有个字符串http://www.55188.com/thread-8306254-2-3.html,需要把8306254后面的2替换成其它数字,其它保持不变,该如何办呢?请看代码: import re url='http://www.55188.com/thread-8306254-2-3.html' pattern='-(\d+)-(\d+)-(\d+)' i=5678 n...

weixin_34216196的博客 1261
上一篇: 查找同色围棋子的广度和深度遍历方法
下一篇: 使用currentStyl读取Tag的样式数据
老紫竹
博客等级 码龄19年 1万+粉丝 1252原创
评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值