xoa.cf.SGLocator.parse_attr

SGLocator.parse_attr(attr, value)[source]

Parse an attribute string to get its root and location

Parameters:
  • attr ({'name', 'standard_name', 'long_name'}) – Attribute name

  • value (str) – Attribute value

Returns:

  • str – Root

  • str, None – Lower case location

Example

In [1]: sg = SGLocator(name_format="{root}_{loc}")

In [2]: sg.parse_attr("name", "super_banana_t")
Out[2]: ('super_banana', 't')

In [3]: sg.parse_attr("standard_name", "super_banana_at_rhum_location")
Out[3]: ('super_banana', 'rhum')

In [4]: sg.parse_attr("standard_name", "super_banana_at_rhum_place")
Out[4]: ('super_banana_at_rhum_place', None)

In [5]: sg = SGLocator(valid_locations=["u", "rho"])

In [6]: sg.parse_attr("name", "super_banana_t")
Out[6]: ('super_banana_t', None)

In [7]: sg.parse_attr("name", "super_banana_rho")
Out[7]: ('super_banana', 'rho')