回复:如何使用正则表达式替换?它无法在脚本指南中学习这些高级技术。
回复:如何使用正则表达式替换?谢谢!
很难为正则表达式中的某些功能提供好的示例。 这是环顾四周的一个很好的例子。 我想我可以在没有环顾四周的情况下做到这一点,但它会更复杂。 @shannon_conners对于文档团队:同时使用正面和负面,前后,是使这个紧凑和富有表现力的原因(带有评论)。 这是一种不寻常的情况,不是主流用法。
回复:如何使用正则表达式替换?谢谢克雷格!
我想问你一个关于底层应用的问题:
想用JSL解决更多的用法,不能用python等工具。
当然,我从这个社区的许多专家那里学习了所有 JSL 代码。
我的要求具体是:
如何将 protobuf(Google Protocol Buffe)格式的二进制文本恢复为使用 JSL 的 JMP 文本。
回复:如何使用正则表达式替换?
谢谢!
h = [=> ];
u = "http://ds.m.emoney.cn/pick";
h["X-Protocol-Id"] = "8900";
h["X-Request-Id"] = "null";
b = Char To Blob( "~0A~0D~E5~BD~93~E6~97~A5~42~E7~82~B9~E8~82~A1~10~F2~DF~D2~09", "ascii~hex" );
rs = New HTTP Request( URL( u ), Method( "POST" ), JSON( b ), Headers( h ) );
rr = rs << Send;
回复:如何使用正则表达式替换?回复:如何使用正则表达式替换?有趣的https://developers.google.com/protocol-buffers/docs/overview
看起来你有两个选择:自己写https://github.com/protocolbuffers/protobuf/blob/master/docs/third_party.md这将适用于许多协议,
或者,更容易和更难,
选择一个现有的并翻译。 我没有看过它,但我可能会尝试从 JAVA 版本开始并将其转换为 JSL。 但随后您需要为下一个协议重复翻译。
制作翻译器将是一个非常酷的项目。 我不打算那样做。
回复:如何使用正则表达式替换?非常感谢克雷奇!
我知道这是一项非常困难的工作。谢谢你写了一个通用的框架,我会努力学习更多的知识来修改。感谢你付出的努力。
回复:如何使用正则表达式替换?使用两个语句。 我在你的例子中添加了一些额外的问题字符......
txt = "d试1(-是2^3([a]文/字789(+内\c容4$3";
step1 = Regex( txt, "\(", "\!n", globalreplace );
step2 = Regex( step1, "[-+/\\^$[\]a-zA-Z]", "", globalreplace );
</CODE>( 需要对步骤 1 进行正则表达式转义。 换行符是 JSL 转义的。</P>
<P><CODE class=" language-jsl">对于step2,[...]的语法比较复杂:
- 以 - 开头,因为没有前导字符就不可能是像 az 这样的范围。 (否则它需要一个正则表达式转义, \- )
- \ 需要正则表达式转义
- ] 需要正则表达式转义
注意不要意外编写 JSL 转义符 \[,它会改变 JSL 解释字符串的方式。 在 [...] 中使用字符集时很可能会发生这种情况,如果您不知道这将是一个问题。
注意序列 [\]。 它不是字符集。它是一个字符集中的 2 个字符。
如何使用正则表达式替换?将指定的“(”替换为换行符,并删除所有非中文和非数字字符。
d试1(-是23(a文字789(+内c容4$3

txt="d试1(-是23(a文字789(+内c容4$3";
na=Regex(txt, ?? );
谢谢!
高级统计建模回复:如何使用正则表达式替换?谢谢克雷格!
我就用 EmEditor 重新替换一下
回复:如何使用正则表达式替换?
谢谢 Craige!
如果我想把这个重新代换更进一步:在汉字和数据之间插入制表符(把原文中的汉字放在左边,数字放在右边),实现能把代换的结果直接输入到JMP中的表格:
您需要如何更改代码?

txt = "d试1(-是2^3([a]文/字789(+内\c容4$3";
step1 = Regex( txt, "\(", "\!n", globalreplace );//??
step2 = Regex( step1, "[-+/\\^$[\]a-zA-Z]", "", globalreplace );//??
s = N Items( step2 );
dt = New Table( "A", Add Rows( s ), New Column( "txt", Character, "Nominal" ), New Column( "num" ) );
dt[0, 0] = step2;
回复:如何使用正则表达式替换?这是负向回顾和正向展望的示例, 环视。步骤 3 是两者的使用。
(?
匹配当前零长度位置之前的单个非数字字符。
(?=\d)
匹配当前零长度位置之后的单个数字字符。
制表符插入到零长度位置,以将非数字与数字分隔。
txt = "d试1(-是2^3([a]文/字789(+内\c容4$3";
// change paren to newline...
step1 = Regex( txt, "\(", "\!n", globalreplace );
// remove unwanted characters - + / \ ^ $ [ ] a..z A..Z
step2 = Regex( step1, "[-+/\\^$[\]a-zA-Z]", "", globalreplace );
// insert tab when character before is not a digit and character after is a digit
step3 = Regex( step2, "(?<!--\d)(?=\d)", "\!t", globalreplace );
// add header
step4 = "aaa\!tbbb\!n" || step3;
// import the string without making a file on disk
Open( Char To Blob( step4 ), "text" );</CODE-->
<P><SPAN class="lia-inline-image-display-wrapper lia-image-align-inline" image-alt="tabs separate fields" style="width: 222px;"><SPAN class="lia-inline-image-display-wrapper" image-alt="tabs separate fields" style="width: 222px;"><span class="lia-inline-image-display-wrapper" image-alt="tabs separate fields" style="width: 222px;"><img src="https://us.v-cdn.net/6038925/uploads/images/49689i961EE5E9BA544965/Capture.PNG" role="button" title="Capture.PNG" alt="tabs separate fields" /><span class="lia-inline-image-caption" onclick="event.preventDefault();">tabs separate fields</span></span><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">tabs separate fields</SPAN></SPAN><SPAN class="lia-inline-image-caption" onclick="event.preventDefault();">标签分隔字段</SPAN></SPAN></P>回复:如何使用正则表达式替换?谢谢克雷格!
看看自己写的代码,真是一种享受!