2012-06-07 44 views
0

我想提取一些HTML标记中包含的文本。例如:用MATLAB忽略一些字符串

<html><body>this is a warning message. wrongs values</body></html> 

结果应该通过忽略所有HTML标记来获取消息。

有没有人有任何建议?

+2

@Iola:这个问题是非常糟糕的措辞,如此糟糕,我甚至不能猜测你意思是。请编辑它,也许给一些示例输入和输出,向我们展示您迄今为止编写的代码。 –

+0

什么是应答器/ balize? – Junuxx

+0

@Junuxx他是指标记符号。 HTML标记为HTML标记法语(http://fr.wikipedia.org/wiki/Langage_de_balisage) –

回答

1

您可以strip HTML tags使用正则表达式:

str = '<html><body>this is a warning message. wrongs values</body></html>'; 
str2 = regexprep(str, '<[^>]*>', '') 
+0

Amro,请你指点我一些关于如何使用matlab创建正则表达式的文档? – lola

+0

@lola:在上面的表达式中,我们查找字符“<”,后面跟零个或多个出现的“*”,除了右括号'[^>]',然后是实际右括号'>'。结果是我们匹配'<....>'与其中的任何内容,并简单地将其替换为空字符串以将其删除。网上有很多[资源](http://www.mathworks.com/help/techdoc/matlab_prog/f0-42649.html),你可以用[this](http://regexpal.com/?flags= g&regex =%3C [^%3E] *%3E&input =%3Chtml%3E%3Cbody%3Ethis%20is%20a%20warning%20message。%20wrongs%20values%3C%2Fbody%3E%3C%2Fhtml%3E%0A)tool – Amro

+0

感谢Amro的解释,我试过这个工具,但我不知道如何使用它? – lola

1

你想是这样的:

a = sscanf('<html><body>this is a warning message. wrongs values</body></html>','<html><body>%[a-zA-Z., ]</body></html>')