使用RegEx删除除两个字母中包含的符号以外的所有符号

时间:2019-04-16 09:52:03

标签: regex python-3.x

使用Python和正则表达式,我需要从字符串中删除某个字符(例如 @Query(value = "SELECT i.* " +" FROM public.mst_item as i " +" join public.mst_store as ist " +" on i.store_id = ist.id " +" join public.mst_item_classifiers as iv " +" on iv.item_id = i.id " +" where ist.id = :store and iv.name IN " +" (select ic.name from public.mst_item_classifiers as ic " +" where ic.name like concat('%',:itemVariant,'%') and ic.status = :status ) " +" and i.status = :status " +" group by ?#{#pageable}, i.id", nativeQuery = true) Page<Item> findByStoreAndItemVariantInAndStatus(@Param("store")Store store,@Param("itemVariant") String itemVariant , @Param("status") byte status, Pageable pageable); ),除非它是放置在两个字母字符之间的单个字符。

例如:

-

1 个答案:

答案 0 :(得分:1)

您可以使用此正则表达式:

<div class="form-group">
  <label for="form-first-name">Name</label>
  <input type="text" name="form-first-name" placeholder="name" class="form-first-name form-control require" id="name">
</div>
<div class="form-group">
  <label for="form-last-name">Age</label>
  <input type="number" name="form-last-name" placeholder="Age" class="form-last-name form-control require" id="age">
</div>
<div class="form-group">
  <label for="form-last-name">Mobile Number</label>
  <input type="text" name="form-last-name" placeholder="Mobile Number" class="form-last-name form-control require" id="mobile_number">
</div>
<div class="form-group">
  <label for="form-last-name">Religion</label>
  <input type="text" name="form-last-name" placeholder="Religion" class="form-last-name form-control require" id="religion">
</div>
<div class="form-group">
  <label for="form-last-name">Occupation</label>
  <input type="text" name="form-last-name" placeholder="Occupation" class="form-last-name form-control require" id="occupation" required>
</div>
<div class="form-group">
  <h4>Gender</h4>
  <div class="row">
    <div class="col-md-4">
      Male<input class="col-md-4" type="radio" name="gender" value="1">
    </div>
    <div class="col-md-4">
      Female<input class="col-md-4" type="radio" name="gender" value="2">
    </div>
    <div class="col-md-4">
      Other<input class="col-md-4" type="radio" name="gender" value="3">
    </div>
  </div>
</div>
<div class="form-group">
  <h4>Marital status</h4>
  <div class="row">
    <div class="col-md-4">
      Married<input type="radio" class="col-md-4" name="marital_status" value="1">
    </div>
    <div class="col-md-4">
      Single<input type="radio" name="marital_status" class="col-md-4" value="1">
    </div>
  </div>
</div>

像这样:

console

说明:

正则表达式可以匹配以下两项之一:

  • (?<![a-zA-Z])-|-(?![a-zA-Z]) 之前没有字母:result = re.sub(r"(?<![a-zA-Z])-|-(?![a-zA-Z])", "", your_string) # or with re.I result = re.sub(r"(?<![a-z])-|-(?![a-z])", "", your_string, re.I)
  • -之后没有(?<![a-zA-Z])--

用字母包围的letter不满足上述任何要求,因此将不匹配。

Demo