Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String TCL替换字符串中的^_String_Search_Replace_Tcl - Fatal编程技术网

String TCL替换字符串中的^

String TCL替换字符串中的^,string,search,replace,tcl,String,Search,Replace,Tcl,我正在尝试从TCL中的字符串中提取一个不需要的字符 我的字符串包含一个克拉符号(^),我需要去掉它 但是,我怀疑可能需要以不同的方式处理“^”(可能是转义?),因为当我首先使用字符串进行搜索时,得到的输出是“-1”(即false/不存在) 我知道我做的是对的,因为如果我先在另一个字符上做一个字符串,我会得到预期的输出位置 STRING: "<^abs" Intended output: "<abs" 该问题具体涉及上述代码的第一行。如前所述,$pos的输出为-1,即使是^exist

我正在尝试从TCL中的字符串中提取一个不需要的字符

我的字符串包含一个克拉符号(^),我需要去掉它

但是,我怀疑可能需要以不同的方式处理“^”(可能是转义?),因为当我首先使用字符串进行搜索时,得到的输出是“-1”(即false/不存在)

我知道我做的是对的,因为如果我先在另一个字符上做一个字符串,我会得到预期的输出位置

STRING: "<^abs"
Intended output: "<abs"

该问题具体涉及上述代码的第一行。如前所述,$pos的输出为-1,即使是^exists的输出也将字符串视为“
”,这似乎是我试图做的,严格来说在纯TCL中是正确的

这不起作用的原因是,我使用的应用程序(by)——它使用TCL作为脚本语言——在将字符串解析为我的TCL脚本之前,正在执行自己的“处理”


感谢您提供的帮助。

。这是我所期望的,但我正在使用的应用程序是,它使用TCL作为脚本语言,正是它为我提供了上述结果。感谢您的帮助。回到绘图板上,然后您没有提供有关此问题的足够数据。您在哪个应用程序中使用它?对此表示歉意t、 我没有意识到在将我的字符串中继到TCL脚本之前,应用程序会以不同的方式处理事情。我在其中运行的应用程序是立体式集成套件,正如下面我自己的回答所详细说明的那样。
字符串映射
正是我要做的。OP:注意,
字符串映射
替换了所有发生的字符串的重复,而不仅仅是第一个。如果只替换第一个字符串,
string replace
regsub
更好。
set pos [string first "^" $STRING]
set replaced_string [string replace $STRING $pos $pos ""]
puts $replaced_string
set replaced_string [string map {"^" ""} $STRING]