如何在不影响#s 的其余部分的情况下正确删除语义.n3 文件中的# 注释?
How to properly remove # comments in a semantic .n3 file without affecting the rest of the #s?
我正在处理从注释中手动清理语义 .n3 和 rdf 文件,并在 C# 中使用 Regex 压缩和漂亮地打印这些文件。
然而 #
是语义文件中用于描述资源的非常常见的字符。
示例代码:
#Processed by Id: cwm.py,v 1.197 2007/12/13 15:38:39 syosi Exp
# using base http://www.prodigi.eu/instances
# Notation3 generation by
# notation3.py,v 1.200 2007/12/11 21:18:08 syosi Exp
# Base was: http://www.prodigi.eu/instances
@prefix : </ac-schema#> .
@prefix ins: </instances#> .
@prefix olanet: <http://www.ibermaticaindustria.com/soluciones/planta-mes-olanet#> .
@prefix plm: <http://hms.ifw.uni-hannover.de/#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
ins:everyone a <http://xmlns.com/foaf/0.1/Group>;
:canSee ins:public;
rdfs:member <http://127.0.0.1/OslcOlanetProvider/api/producer/01>,
[...]
你可以试试这个:
^\s*#.*$
并替换为空
假设,评论将以 # 开头,或者它只能以
\r 或 \n 或 \t 或 \f \v 或 space
将每个文件读取为字符串并调用以下方法并再次写入文件。
示例代码:
using System;
using System.Text.RegularExpressions;
..........
...........
public String removeHash(String input)
{
string pattern = @"^\s*#.*$";
string substitution = @"";
RegexOptions options = RegexOptions.Multiline;
Regex regex = new Regex(pattern, options);
string result = regex.Replace(input, substitution);
return result;
}
我正在处理从注释中手动清理语义 .n3 和 rdf 文件,并在 C# 中使用 Regex 压缩和漂亮地打印这些文件。
然而 #
是语义文件中用于描述资源的非常常见的字符。
示例代码:
#Processed by Id: cwm.py,v 1.197 2007/12/13 15:38:39 syosi Exp
# using base http://www.prodigi.eu/instances
# Notation3 generation by
# notation3.py,v 1.200 2007/12/11 21:18:08 syosi Exp
# Base was: http://www.prodigi.eu/instances
@prefix : </ac-schema#> .
@prefix ins: </instances#> .
@prefix olanet: <http://www.ibermaticaindustria.com/soluciones/planta-mes-olanet#> .
@prefix plm: <http://hms.ifw.uni-hannover.de/#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
ins:everyone a <http://xmlns.com/foaf/0.1/Group>;
:canSee ins:public;
rdfs:member <http://127.0.0.1/OslcOlanetProvider/api/producer/01>,
[...]
你可以试试这个:
^\s*#.*$
并替换为空
假设,评论将以 # 开头,或者它只能以 \r 或 \n 或 \t 或 \f \v 或 space
将每个文件读取为字符串并调用以下方法并再次写入文件。
示例代码:
using System;
using System.Text.RegularExpressions;
..........
...........
public String removeHash(String input)
{
string pattern = @"^\s*#.*$";
string substitution = @"";
RegexOptions options = RegexOptions.Multiline;
Regex regex = new Regex(pattern, options);
string result = regex.Replace(input, substitution);
return result;
}