因为我现在正在使用Windows注册表。我总是找到以下模式..注册表包含两个括号{},中间有数字和字母,您可以在下面看到一些示例:
HKEY_CLASSES_ROOT\Drive\shellex\FolderExtensions\{fbeb8a05-beee-4442-804e-409d6c4515e9}
HKEY_CLASSES_ROOT\CLSID\{00BB2763-6A77-11D0-A535-00C04FD7D062}\InProcServer32
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\CPC\Volume\{64dcb6fa-03c9-11e6-9e9f-806d6172696f}\
任何人都可以帮助我理解这些是指什么?他们随机生成了吗?
我还尝试解析每个注册表项并删除括号之间的任何内容{} ..作为开头,我知道这可以通过正则表达式来完成,但我真的不熟悉它们......任何指导都很感激。
答案 0 :(得分:1)
将{.*?}
替换为{}
(如果一行中有两个GUID,则为懒点)
字符串为Globally Unique Identifiers。来自here:
GUID(或UUID)是“全球唯一标识符”的首字母缩写词。 (要么 '普遍唯一的标识符')。它是一个128位整数 识别资源。术语GUID通常由开发人员使用 使用Microsoft技术,而UUID随处可见 其他
128位足够大,生成算法足够独特 如果1年内每秒生成1,000,000,000个GUID,那么 重复的概率仅为50%。或者如果每个人都在 地球产生了600,000,000个GUID,那里只有50% 重复的可能性。
GUID用于C#,Java和C ++中的企业软件开发 作为数据库键,组件标识符,或几乎任何其他地方 需要真正唯一的标识符。 GUID也用于识别 COM编程中的所有接口和对象。
答案 1 :(得分:0)
当您使用Python
标记问题时(使用2.7
进行测试):
import re
string = """
HKEY_CLASSES_ROOT\Drive\shellex\FolderExtensions\{fbeb8a05-beee-4442-804e-409d6c4515e9}
HKEY_CLASSES_ROOT\CLSID\{00BB2763-6A77-11D0-A535-00C04FD7D062}\InProcServer32
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\MountPoints2\CPC\Volume\{64dcb6fa-03c9-11e6-9e9f-806d6172696f}
"""
rx = r'\{[^}]+\}\\?'
string = re.sub(rx, '', string)
print string
该代码段为您提供所有没有花括号的键。感谢@Liam之前指出错误。
提示:我是Mac用户,但是,我很确定支架是否有些需要,不是吗?
答案 2 :(得分:0)
在这种情况下,正则表达式是最合适的。只需使用:
import re
string = 'HKEY_CLASSES_ROOT\CLSID\{00BB2763-6A77-11D0-A535-00C04FD7D062}\InProcServer32'
string = re.sub('{(.+)}', '', string)
答案 3 :(得分:0)
你尝试过这样的事吗?
string js =
"$(function() {" +
"$('#" + txtDate.ClientID + " tr:last')" +
".find('input[type=\"text\"]')" +
".datepicker();" +
"});";