diff --git a/lammpsdoc/txt2rst.py b/lammpsdoc/txt2rst.py index 3576f72..2e4e7a0 100755 --- a/lammpsdoc/txt2rst.py +++ b/lammpsdoc/txt2rst.py @@ -161,7 +161,7 @@ class RSTFormatting(Formatting): def header(self, content, level): header_content = content.strip() - header_content = re.sub(r'[0-9]+\.[0-9]*\s+', '', header_content) + header_content = re.sub(r'[0-9]+(\.[0-9]*)*\s+', '', header_content) header_underline = RSTFormatting.RST_HEADER_TYPES[level-1] * len(header_content) return header_content + "\n" + header_underline + "\n" diff --git a/tests/test_txt2rst.py b/tests/test_txt2rst.py index b662a24..743e154 100644 --- a/tests/test_txt2rst.py +++ b/tests/test_txt2rst.py @@ -200,6 +200,11 @@ class TestFormatting(unittest.TestCase): self.assertEqual("Level\n" "#####\n\n", s) + def test_filter_header_numbers_deep(self): + s = self.txt2rst.convert("1.1.1.1.1 Level :h1\n") + self.assertEqual("Level\n" + "#####\n\n", s) + def test_all_breaks(self): s = self.txt2rst.convert("one\n" "two\n"