欢迎献计献策:中文字符转换为英文字符

itti 2002-06-20 08:38:11
假如有这样一串字符:
"SELECT 姓名, 年龄, 性别 FROM students"

还有这样一个参考表
--------------------
姓名 name
年龄 age
性别 sex
.
.
.
-------------------

我想根据这个参考表把前面提到的字符串改写为:
"SELECT name, age, sex FROM students"

各位有什么办法或思路,花点时间把它贴出来.
...全文
227 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
LeeMaRS 2002-06-20
  • 打赏
  • 举报
回复
你是脚本语言+数据库吗?
如果是的话,问题就很简单了.以PHP举例:
1.从数据库中读出对照表,存入两个数组中.一个存要替换的文字,一个存要替换成的内容
2.用str_replace,按对照表中的要求进行替换.

下面是str_replace的资料,你看看吧,他支持search和replace都是数组的调用方式.可以完成你的要求.

str_replace
(PHP 3>= 3.0.6, PHP 4 )

str_replace -- Replace all occurrences of the search string with the replacement string
Description
mixed str_replace ( mixed search, mixed replace, mixed subject)

This function returns a string or an array with all occurences of search in subject replaced with the given replace value. If you don't need fancy replacing rules, you should always use this function instead of ereg_replace() or preg_replace().

In PHP 4.0.5 and later, every parameter to str_replace() can be an array.

If subject is an array, then the search and replace is performed with every entry of subject, and the return value is an array as well.

If search and replace are arrays, then str_replace() takes a value from each array and uses them to do search and replace on subject. If replace has fewer values than search, then an empty string is used for the rest of replacement values. If search is an array and replace is a string; then this replacement string is used for every value of search.

Example 1. str_replace() example

$bodytag = str_replace("%body%", "black", "<body text=%body%>");

This function is binary safe.

Note: str_replace() was added in PHP 3.0.6, but was buggy up until PHP 3.0.8.

See also ereg_replace(), preg_replace(), and strtr().
mountainfrank 2002-06-20
  • 打赏
  • 举报
回复
VB:大概这样,改一改就能用
dim original(3),target(3)
original(1)="姓名"
target(1)="name"
original(1)="年龄"
target(1)="age"
original(1)="性别"
target(1)="sex"
sql="SELECT 姓名, 年龄, 性别 FROM students"
for i=1 to 3
sql=Replace(sql,original(i),target(i))
next


itti 2002-06-20
  • 打赏
  • 举报
回复
我们应该考虑通用一点。

如果是这样的字符串呢?
"SELECT765 姓ok名, 年龄t, my性别FROMstudents"

改为
"SELECT764 姓ok名, aget, mysexFROMstudents"

我想我们应该判断找到的某一个字符是否为中文字符。。。

请继续!

ghost_lsw 2002-06-20
  • 打赏
  • 举报
回复
同意楼上的
oujinliang 2002-06-20
  • 打赏
  • 举报
回复
要写得简单些的话,把从字符串中提出的每个单词和参考表对照,没有对应的,就复制下来,否则替换。从字符串中提出单词应该好写吧?
bjay 2002-06-20
  • 打赏
  • 举报
回复
如果要完全的做,需要写一个函数。

1、找到"select"
2、进入一个循环 找“,”
3、每找到一个“,”做4、否则做8、
4、去掉各类分隔符记录在一个变量如A中
5、根据A查找参考表找到相应的项记录在变量B中
6、用变量B内容替换母串中的内容
7、返回2、
8、找到“FROM”串
9、将最后一个“,”与“FROM”之间内容再做一次4-6。
10、在“FROM”前加一个空格。
11、你可以使用改写好的母串了。
eion 2002-06-20
  • 打赏
  • 举报
回复
专门做一个替代函数,将对应的汉语名称替换为英文名称,不过要注意最好是全字匹配,否则容易出错
zhoukun666 2002-06-20
  • 打赏
  • 举报
回复
up
itti 2002-06-20
  • 打赏
  • 举报
回复
还有没有其他方法?

因为,如果对照表很庞大,达100000条记录,而我这个字符串中要替换的地方不到10处,按上面2位的方法是否浪费太多时间了。
已经博主授权,源码转载自 https://pan.quark.cn/s/a4b39357ea24 ### TDS 2014示波器使用手册知识点总结 #### 一、TDS 1000B 和 TDS 2000B 系列数字存储示波器概述 - **产品系列**: TDS 1000B 和 TDS 2000B 是由 Tektronix 公司所研发并推出的数字存储示波器产品线。 - **功能定位**: 主要致力于为电子工程师以及研发人员提供具备高性能与高精度的信号测量设备。 - **应用领域**: 此类设备被普遍应用于教育机构、研发实验室以及工业生产过程中的测试环节。 #### 二、TDS 2014示波器基本操作与使用 - **开机与基本设置**: - 在启动设备时,必须确保仪器已经正确接地。 - 在使用之前,需要根据观察需求设定合适的屏幕亮度、对比度等显示参数。 - **通道选择与配置**: - 可以通过触摸显示屏或设备前面板上的按钮来选定需要进行的测量通道。 - 可依据实际需求来调整垂直灵敏度、水平时间基准等设置项。 - **触发设置**: - 触发模式包括自动、常态、单次等多种选择。 - 触发源与阈值设定涉及确定触发信号的具体来源及其电压阈值水平。 - **测量与分析功能**: - 提供多种自动测量功能选项,涵盖电压峰峰值、频率等参数的测量。 - 支持对波形进行数学运算,例如执行两个波形的相加或相减操作。 #### 三、TDS 2014示波器高级特性 - **波形捕获率**: - 波形捕获率越高,意味着在检测偶发事件方面的能力越强。 - **波形存储与回放**: - 支持将波形数据存储到内部存储单元或外部存储设备中。 - 用户能够随时调取先前保存的波形数据,以进行深入分析。 - *...
内容概要:本文聚焦2026年高教社杯全国大学生数学建模竞赛B题“无线电干扰源的快速自动定位与清除”,同时整合了多个数学建模与工程技术仿真研究资源,涵盖SEM广告投放策略优化、无人机协同路径规划、电力系统无功优化、微电网调度、负荷预测、电动汽车响应率建模等多个领域。其中重点详述了SEM广告投放策略的系统性建模,构建了从问题诊断、关键词分类、预算优化到不确定性环境下鲁棒决策的完整框架。提出基于成本—效益二维归一化的五类关键词划分方法(黄金词、重点词、潜力词、问题词、无效词),并建立了0-1整数规划与CVaR鲁棒优化模型,实现注册转化最大化与风险控制的平衡。文档还汇集了大量基于Matlab/Simulink的仿真资源,涉及智能优化算法、机器学习、信号处理、路径规划等方向,并配套提供代码与论文支持,形成跨学科的技术资源共享平台。; 适合人群:具备一定数据分析与建模基础,正在准备数学建模竞赛或从事科研工作的本科生、研究生及工程技术人员。; 使用场景及目标:①应用于数学建模竞赛备赛,学习多目标优化、分类模型、鲁棒决策等建模范式;②开展广告投放、电力调度、路径规划等领域的科研项目时借鉴模型构建与算法实现方法;③通过提供的Matlab/Python代码快速复现经典或前沿研究成果,提升科研效率与实践能力。; 阅读建议:此资源集合了多个独立研究主题,建议读者根据自身研究方向选择性阅读,重点关注模型构建逻辑与算法实现细节,并结合所提供的Matlab/Python代码进行实践验证,以加深理解与应用能力。

33,025

社区成员

发帖
与我相关
我的任务
社区描述
数据结构与算法相关内容讨论专区
社区管理员
  • 数据结构与算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧