小编kru*_*ruk的帖子

带有python正则表达式的字面括号

我有一本字典(例如英语 - 克罗地亚语).它可能包含句子和短语.我正在将表单文件"english text" = "english text"转换为表单"english text" = "croatian text"并使用python regex模块来执行此操作.我正在使用的正则表达式看起来像这样(给定变量原始,这是英文文本应该翻译:

regexString = '(?<= = ")'+original+'(?=")'
Run Code Online (Sandbox Code Playgroud)

这样我就可以准确地捕获右侧引号内的英文文本,并用克罗地亚语替换它.但是,如果原始文本包含内部括号,则会出现此问题.例如:

original = 'This is a wonderland :)'
Run Code Online (Sandbox Code Playgroud)

在这种情况下,引发错误"不平衡的括号".如果原始版本是硬编码的,我可以通过放置来解决问题

original = 'This is a wonderland :\\)'
Run Code Online (Sandbox Code Playgroud)

但是,整个文件中都有*原始*变量.
除了通过在反斜杠前面的所有括号中更改原始变量之外,有没有解决这个问题的方法?

python regex parentheses

6
推荐指数
1
解决办法
1002
查看次数

在Frama-C中为局部变量分配子句

我正在尝试使用frama-c验证以下代码

/*@ ensures \result != \null; 
  @ assigns \nothing;
  @*/
extern int *new_value();

//@ assigns *p;
void f(int* p){
  *p = 8;
}
//@ assigns \nothing;
int main(void){
 int *p = new_value(); 
 f(p);
}
Run Code Online (Sandbox Code Playgroud)

证明者无法证明主要指定\没有,这是有道理的,因为主要通过函数f分配给*p .但是,我应该如何在\ assigns子句中声明,因为p是局部变量,并且无法在注释中访问.

frama-c

5
推荐指数
1
解决办法
327
查看次数

标签 统计

frama-c ×1

parentheses ×1

python ×1

regex ×1