There is quite a lot on the web around how to power ESP8266s and as mentioned voltage regulator combined the deep sleep function is the way to go for longest life -
http://hackaday.com/2015/05/03/esp8266-wifi-throwies/.
I have taken a very simple approach, I would be very interested to hear why what I am doing is not a good idea or how I could do it better.
I never went down the Arduino route, a bit too electronicy, software seemed a bit too low level, communication did not seem to be well standardised and the cost was not as low as I would have liked.
ESP8266 is very cheap, flexible software from ESPEasy to Lua to Arduino and wifi built in - so can be used like a computer than a microcontroller.
Wifi means that ESP8266 has to wake up / transmit for 10s of seconds in order to send data, whereas an something based on 433MHz technology only wakes up / transmits data for fractions of a second - is there a $5 ESP8266 which has an integrated 433 instead of wifi?
I have taken a rather pragmatic approach to using / powering ESP8266s.
I decided that aside for power usage the Wemos D1 Mini had the right combination of features and ease of use - easy fit on breadboard - microusb for serial connection / power / programming, takes in 5V but operates at 3.3V and supplies a 3.3V supply for sensors.
So in general I am attaching ESP8266 inside to cheap USB power supplies with cheap 5m USB cables.
For remote use I am experimenting a number of once again cheap backup phone power supplies - 2500mAh and 5000mAh - not sure how these will work out or how long they will last.
This is a Wemos D1 Mini with ESPEasy firmware feeding 4 DHT22 temperature and humidity data to Domoticz, 2500mAh USB power brick and a 5m USB cable.

- IMG_0146.JPG (39.1 KiB) Viewed 9645 times
Raspberry Pi 2 B - 2A@5V PSU - Raspbian + Domoticz + RFXtrx(89), LightwaveRF House(dimmers, sockets, wireless/mood switches), Owl CM113, 4 LaCross Temp / Humidity Sensors, 4 Siemens PIR, Smappee, Solaredge, ESP8266