Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/311.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/2/python/311.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
Java 用于字符串替换的正则表达式_Java_Python_Regex_Replace_String Substitution - Fatal编程技术网

Java 用于字符串替换的正则表达式

Java 用于字符串替换的正则表达式,java,python,regex,replace,string-substitution,Java,Python,Regex,Replace,String Substitution,我有一个包含如下数据记录的文件: <http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#long> "10.983007809025084" . <http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/w

我有一个包含如下数据记录的文件:

<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#long> "10.983007809025084" .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#lat> "43.721979606737897" .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://purl.org/dc/terms/identifier> "1234502851114AA" .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/1999/02/22-rdf-syntax-ns#type> <http://www.mylab.org/mydata/schema#Node> .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.disit.org/km4city/schema#nodeType> "STRING_STRING_STRING" .
它只捕捉
pos#long>“1


非常感谢

为了匹配您要替换的行,您想要的正则表达式实际上比您拥有的要复杂一些:
(.+wgs84_pos#)(?:long | lat.+)\。
。这将匹配并捕获字符串中的现有文本

在Perl中,替换代码如下所示(我将Perl脚本的其余部分留给您):

$line=~s/(.wgs84_pos\#)(?:long|lat.+)\./$1^。/g
这样做的目的是捕获第一行的全部内容,减去末尾的句点,然后在添加句点之前将其与附加片段一起转储到新行中。

with
(>\s“\d*.{0,1}\d*.\s\.$)
如果两个数字都在行尾,您可以找到它们。然后您只需将
^
附加到该行即可


或者,您可以将搜索替换为
(>\s“\d*\.{0,1}\d*.\s\.$)
,并替换为
$1^^
(使用记事本++测试).

到目前为止,您尝试了什么?您在这里的时间足够长,可以理解这不是您放弃要求,其他人为您完成工作的地方。我使用您的正则表达式来替换Supreme。此正则表达式非常完美,非常感谢!我很乐意提供帮助。
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#long> "10.983007809025084" .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#lat> "43.721979606737897" .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#long> "10.983007809025084"^^<http://www.w3.org/2001/XMLSchema#float> .
<http://www.mylab.org/mydata/resource/1234502851114AA> <http://www.w3.org/2003/01/geo/wgs84_pos#lat> "43.721979606737897"^^<http://www.w3.org/2001/XMLSchema#float> .
(pos#long>\s"\d)
$line =~ s/(.+wgs84_pos\#(?:long|lat).+) \./$1^^<http:\/\/www.w3.org\/2001\/XMLSchema#float> ./g