![]() |
#1 |
Connoisseur
![]() Posts: 55
Karma: 10
Join Date: Mar 2024
Device: none
|
Possible RegEx error in Sigil (minimal match being ignored)
Hello,
I'm trying to delete all 'span' tags with no content (i.e. <span blah blah>(nothing here)</span> by using the following RegEx (with minimal match enabled) <span .*></span> Here is some example text which shouldn't match anything <hgroup><h2 class="CHAPTER" id="ch1"><span class="CN"><samp class="SANS_Futura_Std_Bold_Condensed_B_11">1</samp></span> <span class="CT"><samp class="SANS_Dogma_OT_Bold_B_11">WINDOWS FOUNDATIONAL CONCEPTS</samp></span></h2></hgroup> As we can see, there are no span tags without content. Running this RegEx however matches the following text (as can be seen in the attached screenshot) <span class="CN"><samp class="SANS_Futura_Std_Bold_Condensed_B_11">1</samp></span> Is there anything I have missed, or is this indeed an error? Rgds Karl |
![]() |
![]() |
![]() |
#2 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 5,629
Karma: 23190435
Join Date: Dec 2010
Device: Kindle PW2
|
The .* in your regular expression also matches other tags. The following expression should work:
Code:
<span[^>]*></span> |
![]() |
![]() |
Advert | |
|
![]() |
#3 |
Connoisseur
![]() Posts: 55
Karma: 10
Join Date: Mar 2024
Device: none
|
|
![]() |
![]() |
![]() |
#4 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 27,781
Karma: 198099188
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Nope. Minimal Match can't affect the inherent greediness of *.
At least I don't recall it doing so in the past. Last edited by DiapDealer; Today at 01:07 PM. |
![]() |
![]() |
![]() |
#5 | |
Connoisseur
![]() Posts: 55
Karma: 10
Join Date: Mar 2024
Device: none
|
Quote:
So what IS 'minimal match' for then, and what's the option (if there is one) for a non-greedy RegEx in Sigil? |
|
![]() |
![]() |
Advert | |
|
![]() |
#6 |
Grand Sorcerer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 27,781
Karma: 198099188
Join Date: Jan 2010
Device: Nexus 7, Kindle Fire HD
|
Doitsu's regex was an example of a non-greedy search. But let me do some investigation. I don't really use the Minimal Match option, so there could be a problem with it. I don't want to be too nasty in dismissing what might be a bug.
|
![]() |
![]() |
![]() |
#7 |
Sigil Developer
![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() Posts: 7,950
Karma: 5449552
Join Date: Nov 2009
Device: many
|
If you have the check box for Text set it uses its own Minimal Match flag, which simply toggles its meaning.
|
![]() |
![]() |
![]() |
|
![]() |
||||
Thread | Thread Starter | Forum | Replies | Last Post |
match an empty line with a regex? | lumpynose | Sigil | 5 | 05-29-2019 03:03 AM |
REGEX match everything before # | JLius | ePub | 2 | 01-08-2017 04:25 PM |
[Regex Search] Minimal match not possible? | nqk | Editor | 7 | 12-24-2014 03:19 AM |
how to have regex dot match any character including newline? | gnychis | Calibre | 5 | 11-30-2010 06:35 PM |
Need help with a conversion regex - can't match newline | ereader123 | Calibre | 2 | 03-29-2010 10:58 AM |