正则表达式忽略单词并修复dble斜杠

时间:2018-01-28 17:50:33

标签: python regex

试图获得一个正则表达式,我需要它忽略一个特定的单词,但我的正则表达式无法正常工作。

实施例。我们的忽略词将是“时间轴”并修复最后3行。

实际上,我的正则表达式得到时间表,但我不需要这个。 例如:

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">

<div class="container">
    <div class="row">
        <div class="col">
            <div class="row">
                <div class="col">
                    <h2>Project: [7] Example Project </h2>
                    <p>7 items</p>
                </div>
                <div class="col d-flex align-items-center justify-content-end">
                    <button (click)='onDelete()' type="button" class="btn mr-1">delete</button>
                    <button (click)='onUpdate()' type="button" class="btn mr-1">update</button>
                    <button (click)='onCreate()' type="button" class="btn">create</button>
                </div>
            </div>

            <table class="table text-center table-responsive table-bordered table-striped margin">
                <thead>
                    <tr>
                        <th>select</th>
                        <th>No.</th>
                        <th>Company</th>
                        <th>CCO No.</th>
                        <th>Budget Code</th>
                        <th>Description</th>
                        <th>Award Date</th>
                        <th>Sent Date</th>
                        <th>Cost Status</th>
                        <th>Committed Amount</th>
                    </tr>
                </thead>
                <tbody>
                    <tr *ngFor="let item of items">
                        <td><input type="checkbox" (change)="checkbox(item, $event)" [(ngModel)]="item.flag"></td>
                        <td>No</td>
                        <td>Company</td>
                        <td>CCO</td>
                        <td>Budget</td>
                        <td>Description</td>
                        <td>Award_Date</td>
                        <td>Sent_Date</td>
                        <td>500</td>
                        <td>1000</td>
                    </tr>
                </tbody>
            </table>
        </div>
    </div>
</div>

我有一个小错误,我不知道为什么在最后3行没有正确包含双斜线?

这是我的正则表达式:https://regex101.com/r/gPJZeZ/1

如何忽略时间轴并修复双斜线?

1 个答案:

答案 0 :(得分:1)

排除时间表。

(?:https?://)?(?:www\.)?facebook\.com/(?!(?:.+/)?[\w.-]*?timeline)(?:.+/)?([\w.-]+)|%[^?/\r\n]*

https://regex101.com/r/AkeDkC/1

断言将匹配时间轴,如果它在那里,当然会失败。

您可以根据需要在时间轴之前/之后添加特殊内容。

还包括一些其他修正。

格式化

    (?: https?:// )?
    (?: www\. )?
    facebook\.com/
    (?!
         (?: .+ / )?
         [\w.-]*?
         timeline
    )
    (?: .+ / )?
    ( [\w.-]+ )                   # (1)
 |  
    % [^?/\r\n]* 

更新

直到timeline这个词,但没有更进一步..

(?:https?://)?(?:www\.)?facebook\.com/(?:.+/)?((?:(?!timeline)[\w.-])+)|%[^?/\r\n]*

https://regex101.com/r/7pu13K/1

    (?: https?:// )?
    (?: www\. )?
    facebook\.com/
    (?: .+ / )?
    (                             # (1 start)
         (?:
              (?! timeline )
              [\w.-] 
         )+
    )                             # (1 end)
 |  
    % [^?/\r\n]*