Issue is probably related to type field of your shapefile. Generally, ID values are numerical and you are using a Wildcard Character (%) with a minus sign (-) for your search. It's only logical if shapefile has a string field in attributes table. To test my approach I used a shapefile point layer (25 features) with ID field and following version of your code:
import processing
point = '/home/zeito/pyqgis_data/random_points.shp'
layer = processing.getObject(point)
nbr = QgsExpression( u"ID LIKE '%1'" )
#nbr2 = QgsExpression( u"MARKER_COL LIKE '%-ue'" )
itnbr = layer.getFeatures( QgsFeatureRequest( nbr ) )
for i in itnbr:
x = i.geometry().asPoint().x()
y = i.geometry().asPoint().y()
print "X Coord : %f" %x
print "Y Coord : %f" %y
print
After running the code at Python Console of QGIS I got:
X Coord : 390945.280000
Y Coord : 4451149.380000
X Coord : 439639.970000
Y Coord : 4455290.050000
X Coord : 366311.250000
Y Coord : 4433366.270000
for IDs 1, 11 and 21; as expected.
Afterward, I modified only one record in attributes table (MARKER_COL field); as it can be observed at following image:

for running following version of your code:
import processing
point = '/home/zeito/pyqgis_data/random_points.shp'
layer = processing.getObject(point)
#nbr = QgsExpression( u"ID LIKE '%1'" )
nbr2 = QgsExpression( u"MARKER_COL LIKE '%-ue'" )
itnbr = layer.getFeatures( QgsFeatureRequest( nbr2 ) )
for i in itnbr:
x = i.geometry().asPoint().x()
y = i.geometry().asPoint().y()
print "X Coord : %f" %x
print "Y Coord : %f" %y
print
Result was:
X Coord : 390945.280000
Y Coord : 4451149.380000
for 'bl-ue' record (MARKER_COL field); again as expected.
layer
?layer = processing.getObject(point)
print layer
?<qgis._core.QgsVectorLayer object at 0x123d49cc8>