![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 07:29 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [VBS]如何把文本中回车转换成&vbcr&字符 |
| 可打印版本 2,638 / 18 |
| 第1楼 kich | 发表于 2007-04-14 10:02 |
| 中级用户 发帖 168 积分 397 | |
|
[VBS]如何把文本中回车转换成&vbcr&字符 如何把文本中回车转换成&vbcr&字符??
比如用ReadAll读了个文本的内容,假设是: ff fukkk eee 然后把转换成: ff&vbcr&fukkk&vbcr&eee 我用Asc函数转换,但转换成这样的: ff &vbcr&fukkk &vbcr&eee 请指教啊!谢谢 |
|
| 第2楼 baomaboy | 发表于 2007-04-14 11:40 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by kich at 2007-4-14 10:02: 你所谓的回车,其实是回车+换行,如果没猜错的话,你只是替换了回车,还剩换行在呢,当然是那效果。 |
|
| 第3楼 kich | 发表于 2007-04-14 11:57 |
| 中级用户 发帖 168 积分 397 | |
|
哦,对的,恩,谢谢了!好象是这么做的!!
问一下,把一篇TXT文字(里面可能会有特殊符号和回车)定义成一个很长的字符,然后放到VBS脚本里做为一个常数,怎么做啊?? |
|
| 第4楼 baomaboy | 发表于 2007-04-14 12:13 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by kich at 2007-4-14 11:57: 没看明白你的意思. |
|
| 第5楼 kich | 发表于 2007-04-15 00:13 |
| 中级用户 发帖 168 积分 397 | |
|
就是说,如果我有一大段文字,我需要它作为一个常量,然后我准备输入到其他文本里(因为其他文本要用到这些文字).比如说,一个HTML的小段文字,我要把它作为一个常量输出,但它里面有特殊字符,怎么解决??(回车和引号,不能把这一大段作为一个常量吧,因为有回车在里面嘛)
不知道有没有说明白!! |
|
| 第6楼 baomaboy | 发表于 2007-04-15 00:20 |
| 银牌会员 发帖 554 积分 1,513 | |
|
引号 可以用chr(34)
不如你再说明白一些你的最终目的,比如这样做是为了"加密" 或其他的 |
|
| 第7楼 kich | 发表于 2007-04-15 00:26 |
| 中级用户 发帖 168 积分 397 | |
|
我的目的:
我是想做一个中英文双字幕的字幕文件,但首先要对这些字幕做格式说明,因为我要对很多电影的字幕做操作,而他们的格式都是一样的,所以,这些定义的格式,可以把它做成一个常量放在VBS文件里,然后,分别调入中英文字幕再稍加处理,然后在这些中英文字幕的最前面加上定义的格式说明(就是那个常量),但这个常量是个比较长的文本段,有十几行,没办法做成一个常量. 为更表达更清晰,把那个格式定义帖出来放在下面,看看怎么把这段文本做成一个常量呢? 当然,有时候还涉及到引号! Thx [ Last edited by kich on 2007-4-15 at 12:27 AM ] |
|
| 第8楼 kich | 发表于 2007-04-15 00:31 |
| 中级用户 发帖 168 积分 397 | |
|
我以前的做法是把这段文字作成一个文本文件放在那,然后用ReadAll调用,但这就要求这个文本文件必须存在,很麻烦,一个脚本+一个文件!
如果把这段文字定义成常量放在VBS里,这样就省事多了,可以随便拷贝了!! |
|
| 第9楼 baomaboy | 发表于 2007-04-15 00:55 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by kich at 2007-4-15 00:31: 遇到阻碍单行的符号就用替换的方法吧,要输出时再还原,呵呵 几乎所有的病毒都是用此法加密自身为单行的,替换成一些绝对不会有冲突的比如chr(18)、chr(30)。。。 [ Last edited by baomaboy on 2007-4-15 at 01:05 AM ] |
|
| 第10楼 kich | 发表于 2007-04-15 01:07 |
| 中级用户 发帖 168 积分 397 | |
|
哦,原来就是用一个不会冲突的字符代替啊,那就用一些特殊字符来替换吗?
那回车+换行怎么换! 我是想做一个专门用于转换的VBS文件,把文件拖上去,然后就输出一个替换过的文件! 那么这个VBS在处理回车+换行,应该怎么写程序呢? Replace(content,chr(13)+char(10),cha(18))?? |
|
| 第11楼 baomaboy | 发表于 2007-04-15 01:38 |
| 银牌会员 发帖 554 积分 1,513 | |
Originally posted by kich at 2007-4-15 01:07: Replace(content,chr(13)+char(10),cha(18))?? 分别替换因为个别时回车和换行不连接,那Replace(content,chr(13)+char(10),cha(18))失效了。 Replace(content,chr(13),cha(28)) Replace(content,chr(13),cha(29)) Replace(content,chr(34),cha(18)) 替换" 因为 " 在VBS中用于注释 变单行后 " 之后全变成注释了 所以必须换掉。 想拖到上面输出: content=readallstr content=Replace(content,chr(13),cha(28)) content=Replace(content,chr(13),cha(29)) content=Replace(content,chr(34),cha(18)) fso.输出content 原理是这样的 实际操作中大多用 For len(content) 遍历来替换的 [ Last edited by baomaboy on 2007-4-15 at 01:39 AM ] |
|
| 第12楼 kich | 发表于 2007-04-15 04:00 |
| 中级用户 发帖 168 积分 397 | |
|
哦,原来是这样,晚上我回去试试看到底是怎么才能输出我想要的东西!!
谢谢指教!有什么不明白,我还来这里问问看啊!! Thx |
|
| 第13楼 slore | 发表于 2007-04-15 05:12 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
和单引不知道有什么关系,字符串里貌似只有""特殊罢了。
|
|
| 第14楼 kich | 发表于 2007-04-15 23:21 |
| 中级用户 发帖 168 积分 397 | |
|
有这样一个单引过滤好是好点我觉得!因为我想还转换其他的文本的呢!!
呵呵,谢谢各位指教! |
|
| 第15楼 slore | 发表于 2007-04-16 00:13 |
| 铂金会员 发帖 2,478 积分 5,212 | |
|
"我是单引号 '你把我当字符串我没有被注释!"
你看上面的能被注释掉么? |
|
| 1 2 下一页 |
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |