我想知道如何使用正则表达式函数在地图中查找项目。在我的情况下,我有一个包含表达式(如en*,es*,en-AU等)的地图,以及可能值的字符串,如en,en-US,en-GB,es-CL等。
我想使用该字符串来搜索并在地图中找到该项目。首先查找没有通配符的键,然后将具有通配符的键作为第二优先级进行查找。
请帮我解决这个问题,如果这是低效的,或者如果有其他方法,请告诉我另一种方法。我使用C++和boost与stl。
我想使用该字符串来搜索并在地图中找到该项目。首先查找没有通配符的键,然后将具有通配符的键作为第二优先级进行查找。
请帮我解决这个问题,如果这是低效的,或者如果有其他方法,请告诉我另一种方法。我使用C++和boost与stl。
en*
、es*
的表达式看起来像通配符,而不是正则表达式。相应的正则表达式应该是^en.*
、^es.*
。 - Barmarstd::map
还是任何关联容器?是否需要一般通配符,还是只需要精确匹配的通配符模式?你能控制容器的定义吗?我们要处理多少条目——10、1000、100000、10000000、1000000000、还是更多? - Yakk - Adam Nevraumont